Regex-luokan käyttämiseksi sinun täytyy viitata nimiavaruuteen: käyttäen System.Text.RegularExpressions;
Validointi toteutetaan Regex-luokan avulla
Esimerkki 1: Kommentoitu koodi tekee saman, mutta toinen on staattinen metodi ja toinen instanssimetodi
var-lähde = "Liu Bei, Guan Yu, Zhang Fei, Sun Quan"; Regex regex = uusi regex ("Sun Quan"); if (regex. IsMatch (lähde)) //{ Console.WriteLine ("Merkkijono sisältää arkaluontoisia sanoja: Sun Quan!) ); //} if (Regex.IsMatch (lähde, "Sun Quan"))
{ Console.WriteLine ("Merkkijono sisältää arkaluontoisia sanoja: Sun Quan!) );
} Console.ReadLine();
Esimerkki 2: Käyttäen konstruktoria, jossa on kaksi parametria, toinen parametri osoittaa tapauksen sivuuttamista ja on yleisesti käytetty
var source = "123abc345DEf"; Regex regex = new Regex("def",RegexOptions.IgnoreCase); if (regex. IsMatch (lähde))
{ Console.WriteLine ("Merkkijono sisältää arkaluontoisia sanoja: def!) );
} Console.ReadLine();
Käytä Regex-luokkaa korvaamaan se
Esimerkki 1: Yksinkertainen tilanne
var source = "123abc456ABC789"; Staattinen menetelmä var newSource=Regex.Replace(source,"abc","|",RegexOptions.IgnoreCase); Instanssimenetelmä Regex regex = uusi Regex("abc", RegexOptions.IgnoreCase); var newSource = regex. Replace(lähde, "|"); Console.WriteLine("Alkuperäinen merkkijono:"+lähde); Console.WriteLine("Korvattu merkkijono:"+newSource); Console.ReadLine();
Tulos:
Alkuperäinen kieli: 123abc456ABC789
Vaihdettu merkkijono: 123|456|789
Esimerkki 2: Korvasimme sovitetut vaihtoehdot html-koodilla ja käytimme MatchEvaluatorin delegointia
var lähde = "123abc456ABCD789"; Regex regex = uusi Regex("[A-Z]{3}", RegexOptions.IgnoreCase); var newSource = regex. Replace(lähde, uusi MatchEvaluator (OutPutMatch)); Console.WriteLine("Alkuperäinen merkkijono:"+lähde); Console.WriteLine("Korvattu merkkijono:"+newSource); Console.ReadLine();
yksityinen staattinen merkkijono OutPutMatch (Match match)
{ Palauta "<b>" +match. Value+ "</b>";
}
Tuotos:
Alkuperäinen kieli: 123abc456ABCD789
Vaihdettu kieli: 123<b>abc</b>456<b>ABC</b>D789 |