For å bruke Regex-klassen må du referere til navnerommet: ved å bruke System.Text.RegularExpressions;
Validering implementeres ved bruk av Regex-klassen
Eksempel 1: Den annoterte koden gjør det samme, men den ene er en statisk metode og den andre 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 inneholder sensitive ord: Sun Quan!) ); //} hvis (Regex.IsMatch(kilde, "Sun Quan"))
{ Console.WriteLine("Strengen inneholder sensitive ord: Sun Quan!) );
} Console.ReadLine();
Eksempel 2: Ved å bruke en konstruktør med to parametere, indikerer den andre parameteren å ignorere tilfelle og brukes ofte
var source = "123abc345DEf"; Regex regex = ny Regex ("def",RegexOptions.IgnoreCase); hvis (Regex. IsMatch(kilde))
{ Console.WriteLine("Strengen inneholder sensitive ord: def!) );
} Console.ReadLine();
Bruk Regex-klassen som erstatning
Eksempel 1: Enkel situasjon
var source = "123abc456ABC789"; Statisk metode var newSource=Regex.Replace(source,"abc","|",RegexOptions.IgnoreCase); Instansmetode Regex regex = ny Regex ("abc", RegexOptions.IgnoreCase); var newSource = regex. Replace(kilde, "|"); Console.WriteLine("Original streng:"+source); Console.WriteLine("Erstattet streng:"+newSource); Console.ReadLine();
Utfall:
Original streng: 123abc456ABC789
Byttet streng: 123|456|789
Eksempel 2: Ved å erstatte de matchede alternativene med html-kode, brukte vi MatchEvaluator-delegeringen
var source = "123abc456ABCD789"; Regex regex = ny Regex ("[A-Z]{3}", RegexOptions.IgnoreCase); var newSource = regex. Replace(kilde, ny MatchEvaluator(OutPutMatch)); Console.WriteLine("Original streng:"+source); Console.WriteLine("Erstattet streng:"+newSource); Console.ReadLine();
privat statisk streng OutPutMatch (Matchkamp)
{ returner "<b>" +match. Value+ "</b>";
}
Ytelse:
Original streng: 123abc456ABCD789
Byttet streng: 123<b>abc</b>456<b>ABC</b>D789 |