冰呂のまったりブログ

ビジネスからプログラミング・デザイン等 日々興味を持った内容を配信しています

【C#】 Linqで正規表現を利用する

f:id:hirouf:20141216143317j:plain

今回は、Linq正規表現を利用するための方法をメモします。
(他に良い方法がありましたら教えてください。)

Program.cs

using System;

namespase LinqRegexTest
{
    class Program
    {
        public staticvoid Main(string[] arg)
        {
            RegexTester.Execute();
        }
    }
}

RegexTester.cs

using System;
using System.Linq;
using System.Text.RegularExpressions;

namespase LinqRegexTest
{
    class RegexTester
    {
        public static void Execute()
        {
            string[] keywords = {
                        "Test(TM) SE Development",
                        "Test Development"
            };
            
            var results = keywords.Select(x => x).Where(x => IsMatch(x, @"Test") == true);

            foreach(var r in result)
            {
                Console.WriteLine(r);
            }
        }

        public static bool IsMatch(this string target, string pattern)
        {
            var rx = new Regex(pattern);
            return rx.IsMatch(target);
        }
    }
}

一応こんな感じで正規表現を利用することができました。