【C#入門】正規表現でパターンに一致する文字列を置換(Replace)

こんにちは!エンジニアの中沢です。

C#には正規表現で文字列のパターンを指定して置換するための「Replaceメソッド」あります。

正規表現でパターンを指定すれば任意の文字列を書き換えることができるので、上手く活用してください。

この記事では、

・正規表現とは
・Replaceメソッドで置換する方法

という基本的な内容から、

・Replaceメソッドで削除する方法

などの応用的な使い方に関しても解説していきます。

正規表現とは

正規表現とはいくつかの文字列のパターンを一つの形式でまとめて表現するための表現方法のことです。

主な正規表現については次の表のとおりになります。

記号記号の説明例の説明
.任意の1文字。改行文字は除く。.+任意の文字列
*直前の1文字の0回以上の繰り返しと一致hoge*hogeもしくはhogee...と一致
^行の先頭^[0-9]行頭が数字
$行の末尾^.{10}$10文字の行
[ ]カッコ内の任意の1文字と一致。「-」で範囲指定可。[a-z]小文字のアルファベット1文字と一致
[^ ]カッコ内の任意の1文字と不一致。「-」で範囲指定可。[^A-Z]大文字のアルファベット以外
+直前の文字の1個以上の繰り返しと一致hoge+hogee...と一致
?直前の文字の0または1文字と一致hoge?eと一致
{ }カッコ内の数値の繰り返しと一致{n}直前の文字のn個の繰り返しと一致
{,n}直前の文字のn個以下の繰り返しと一致
{m,}直前の文字のm個以上の繰り返しと一致
{m,n}直前の文字のm個以上、n個以下の繰り返しと一致
|直前、直後どちらかのパターンに一致hoge|piyohogeまたはpiyo
( )カッコ内をグループ化。マッチした内容は参照可。

Replaceメソッドで置換する方法

ここでは、Replaceメソッドで置換する方法を解説します。

Replaceメソッドは第1引数に検索対象の文字列を指定し、第2引数に置換後の文字列を指定します。

次のプログラムで確認してみましょう。

using System;
using System.Text.RegularExpressions;

namespace Sample
{
    class Sample
    {
        static void Main()
        {
            string str = "SamuraiEngineer";
            Regex reg = new Regex("Samurai");

            string result = reg.Replace(str, "サムライ");

            Console.WriteLine(result);

            Console.ReadKey();
        }
    }
}

実行結果:

サムライEngineer

このようにして指定した文字列を置換することができました。

Replaceメソッドで削除する方法

ここでは、Replaceメソッドで削除する方法を解説します。

Replaceメソッドで削除するには、置換後の文字列に空文字(””)を指定します。

次のプログラムで確認してみましょう。

using System;
using System.Text.RegularExpressions;

namespace Sample
{
    class Sample
    {
        static void Main()
        {
            string str = "Samurai123Engineer";
            Regex reg = new Regex("[0-9]");

            string result = reg.Replace(str, "");

            Console.WriteLine(result);

            Console.ReadKey();
        }
    }
}

実行結果:

SamuraiEngineer

このようにして指定した文字列を削除することができました。

まとめ

いかがでしたか?

今回は正規表現でパターンを指定して置換する方法を解説しました。

Replaceメソッドで置換後の文字列に空文字(””)を指定すれば削除できるので、ぜひ活用してくださいね。

もし、正規表現で置換する方法を忘れてしまったらこの記事を確認してください!

LINEで送る
Pocket

ITエンジニアへ転職したい方におすすめ

自分を評価してくれる企業に転職して年収を上げたい! 自分のスキルにあった独自案件を知りたい!
エンジニアは今もっとも注目されている職業の1つ。エンジニアになって年収を増やしたい方や、あなたのスキルに見合った企業へ転職したいエンジニアの方も多いですよね。

しかし、大手の転職媒体は扱う求人数が多くても、誰もが登録しているので競争率もかなり高くなっています。そのため、あなたの条件に見合った企業を見つけても転職するためには、相応の努力とスキルが必要となります。

こういった媒体では、未経験からエンジニアを目指す方やエンジニア歴2〜3年で転職を考えている方にとって、最適な転職環境とはいえません。

そこでオススメしたいのが、未経験者や若手エンジニア向けの独自案件を多く掲載している「侍ワークス」です。

侍ワークスは、独自案件を多く掲載しているだけでなく、

・応募から就業まで一貫したサポート

・就業後もアフターフォロー

といった経験の浅い方や初めてエンジニアを目指す方にも安心のフォロー体制が整っています。もちろん登録は完全無料!しかも案件を見るだけなら登録も不要です。

まずは、お気軽にどんな求人があるか見てみてください。あなたにピッタリの企業がきっと見つかりますよ! 侍ワークスの求人情報を見る

書いた人

中沢 丈

中沢 丈

フリーランスエンジニア。
システム開発からコンテンツ作成まで幅広く対応します。

連絡先はこちらです。
[email protected]