C# で正規表現を使用する - Visual C# プログラミング

PROGRAM


C# で正規表現を使用する

Visual C# で正規表現を使用するためには、そのソースコードの冒頭で、まずは次のように宣言をします。

using System.Text.RegularExpressions;

このようにしたら後は、たとえば次のような感じで Regex クラスを使用して、正規表現を利用できるようになります。

// reg という名前の変数で正規表現クラス Regex を使用します。

Regex reg;

 

// 検索する正規表現パターンを設定します。Regex クラスでは、コンストラクタで正規表現パターンを設定する必要があるようです。

reg = new Reg(@"^(?:生活援助(?<unit>\d+)|身体\d+生活(?<unit>\d+))");

 

// text という名の String 変数に格納された文字列が、先ほど設定した正規表現パターンにマッチすることを確認します。

if (reg.IsMatch(text))

{

// 正規表現にマッチした場合は、そのマッチした情報を Match 型の変数に取得します。

Match match = reg.Match(text);

 

// 今回は正規表現パターン内で、マッチした数値を "unit" というサブグループに取得されるようにしているので、それを result という Int32 型の変数に取得しています。

result = Convert.ToInt32(match.Groups["unit"].Value);

}

今回の例では、"生活援助1" や "身体1生活2" といった文字列から、"生活〜" の後につく数字を "unit" という名前で取得するということをしていますけど、正規表現ではもっと複雑なパターンを作成することで、もっと高度な致判定や、複数箇所を切り出して取得したり、任意の文字列に置き換えたりすることもできるようになっています。

 


[ もどる ]