A Regex osztály használatához hivatkozni kell a névtérre: System.Text.RegularExpressions segítségével;
Az ellenőrzést a Regex osztály segítségével valósítják meg
1. példa: Az annotált kód ugyanezt csinálja, de az egyik statikus metódus, a másik példány metódus
var forrás = "Liu Bei, Guan Yu, Zhang Fei, Sun Quan"; Regex regex = új regex ("Sun Quan"); if (regex. IsMatch (forrás)) //{ Console.WriteLine ("A sorozat érzékeny szavakat tartalmaz: Sun Quan!) ); //} if (Regex.IsMatch (forrás: "Sun Quan"))
{ Console.WriteLine ("A sorozat érzékeny szavakat tartalmaz: Sun Quan!) );
} Console.ReadLine();
Példa 2: Egy két paraméterrel rendelkező konstruktor használata a második paraméter a figyelmen kívül hagyó esetet jelzi, és gyakran használják
var source = "123abc345DEf"; Regex regex = new Regex("def",RegexOptions.IgnoreCase); if (regex. IsMatch (forrás))
{ Console.WriteLine ("String érzékeny szavakat tartalmaz: def!) );
} Console.ReadLine();
Használd a Regex osztályt a helyettesítésére
1. példa: Egyszerű helyzet
var source = "123abc456ABC789"; Statikus módszer var newSource=Regex.Replace(source,"abc","|",RegexOptions.IgnoreCase); Instance módszer Regex regex = new Regex("abc", RegexOptions.IgnoreCase); var newSource = regex. Replace(forrás, "|"); Console.WriteLine("Eredeti string:"+source); Console.WriteLine("Lecserélt string:"+newSource); Console.ReadLine();
Eredmény:
Eredeti húr: 123abc456ABC789
Kicserélt húr: 123|456|789
Példa 2: A párosított opciókat html kódra cseréltük, a MatchEvaluator delegációt használtuk
var source = "123abc456ABCD789"; Regex regex = new Regex("[A-Z]{3}", RegexOptions.IgnoreCase); var newSource = regex. Replace(forrás, új MatchEvaluator (OutPutMatch)); Console.WriteLine("Eredeti string:"+source); Console.WriteLine("Lecserélt string:"+newSource); Console.ReadLine();
privát statikus string OutPutMatch (Match match)
{ Return "<b>" +match. Érték+"</b>";
}
Hozam:
Eredeti húr: 123abc456ABCD789
Cserélt húr: 123<b>abc</b>456<b>ABC</b>D789 |