Um die Regex-Klasse zu verwenden, musst du auf den Namensraum verweisen: mit System.Text.RegularExpressions;
Die Validierung wird mit der Regex-Klasse implementiert
Beispiel 1: Der annotierte Code macht dasselbe, aber eine ist eine statische Methode und die andere eine Instanzmethode
var source = "Liu Bei, Guan Yu, Zhang Fei, Sun Quan"; Regex regex = neuer Regex ("Sun Quan"); Wenn (Regex. IsMatch(Quelle)) //{ Console.WriteLine("Die Zeichenkette enthält sensible Wörter: Sun Quan!) ); //} wenn (Regex.IsMatch (Quelle, "Sun Quan"))
{ Console.WriteLine("Die Zeichenkette enthält sensible Wörter: Sun Quan!) );
} Console.ReadLine();
Beispiel 2: Bei Verwendung eines Konstruktors mit zwei Parametern zeigt der zweite Parameter das Ignorieren des Falles an und wird häufig verwendet
var source = "123abc345DEf"; Regex regex = neuer Regex ("def",RegexOptions.IgnoreCase); Wenn (Regex. IsMatch(Quelle))
{ Console.WriteLine("String enthält sensible Wörter: def!) );
} Console.ReadLine();
Nutze die Regex-Klasse als Ersatz
Beispiel 1: Einfache Situation
var source = "123abc456ABC789"; Statische Methode var newSource=Regex.Replace(source,"abc","|",RegexOptions.IgnoreCase); Instanzmethode Regex regex = neuer Regex ("abc", RegexOptions.IgnoreCase); var newSource = regex. Replace(Quelle, "|"); Console.WriteLine("Original-String:"+source); Console.WriteLine("Ersetzter String:"+newSource); Console.ReadLine();
Ergebnis:
Originalsaite: 123abc456ABC789
Ersetzte Saite: 123|456|789
Beispiel 2: Wir haben die abgestimmten Optionen durch HTML-Code ersetzt und die MatchEvaluator-Delegation verwendet
var source = "123abc456ABCD789"; Regex regex = neuer Regex ("[A-Z]{3}", RegexOptions.IgnoreCase); var newSource = regex. Replace(Quelle, neuer MatchEvaluator(OutPutMatch)); Console.WriteLine("Original-String:"+source); Console.WriteLine("Ersetzter String:"+newSource); Console.ReadLine();
private statische Saite OutPutMatch (Match-Match)
{ Return "<b>" +match. Value+ "</b>";
}
Ausgabe:
Originalsaite: 123abc456ABCD789
Ersetzte Saite: 123<b>ABC</b>456<b>ABC</b>D789 |