For at bruge Regex-klassen skal du referere til navnerummet: ved hjælp af System.Text.RegularExpressions;
Validering implementeres ved hjælp af Regex-klassen
Eksempel 1: Den annoterede kode gør det samme, men den ene er en statisk metode, og den anden er en instansmetode
var source = "Liu Bei, Guan Yu, Zhang Fei, Sun Quan"; Regex regex = ny Regex ("Sun Quan"); hvis (regex. IsMatch(kilde)) //{ Console.WriteLine("Strengen indeholder følsomme ord: Sun Quan!) ); //} hvis (Regex.IsMatch(kilde, "Sun Quan"))
{ Console.WriteLine("Strengen indeholder følsomme ord: Sun Quan!) );
} Console.ReadLine();
Eksempel 2: Ved at bruge en konstruktør med to parametre, indikerer den anden parameter at ignorere tilfælde og bruges almindeligvis
var source = "123abc345DEf"; Regex regex = ny Regex ("def",RegexOptions.IgnoreCase); hvis (regex. IsMatch(kilde))
{ Console.WriteLine("Strengen indeholder følsomme ord: def!) );
} Console.ReadLine();
Brug Regex-klassen til at erstatte den
Eksempel 1: Simpel situation
var source = "123abc456ABC789"; Statisk metode var newSource=Regex.Replace(source,"abc","|",RegexOptions.IgnoreCase); Instansmetode Regex regex = ny Regex ("abc", RegexOptions.IgnoreCase); var newSource = regex. Udskift (kilde, "|"); Console.WriteLine("Original streng:"+source); Console.WriteLine("Udskiftet streng:"+newSource); Console.ReadLine();
Udfald:
Original streng: 123abc456ABC789
Udskiftet streng: 123|456|789
Eksempel 2: Ved at erstatte de matchede muligheder med html-kode brugte vi MatchEvaluator-delegeringen
var source = "123abc456ABCD789"; Regex regex = ny Regex ("[A-Z]{3}", RegexOptions.IgnoreCase); var newSource = regex. Udskift(kilde, ny MatchEvaluator(OutPutMatch)); Console.WriteLine("Original streng:"+source); Console.WriteLine("Udskiftet streng:"+newSource); Console.ReadLine();
privat statisk streng OutPutMatch (Matchmatch)
{ Returner "<b>" +match. Value+ "</b>";
}
Udgang:
Original streng: 123abc456ABCD789
Udskiftet streng: 123<b>abc</b>456<b>ABC</b>D789 |