Regex sınıfını kullanmak için isim alanına referans vermeniz gerekir: System.Text.RegularExpressions kullanılarak;
Doğrulama, Regex sınıfı kullanılarak uygulanır
Örnek 1: Annotasyonlu kod aynı şeyi yapar, ancak biri statik bir metod, diğeri ise örnek yöntemdir
var kaynağı = "Liu Bei, Guan Yu, Zhang Fei, Sun Quan"; Regex regex = yeni regex ("Sun Quan"); if (regex. IsMatch(kaynak)) //{ Console.WriteLine("Dizide hassas kelimeler bulunur: Sun Quan!) ); //} if (Regex.IsMatch (kaynak, "Sun Quan"))
{ Console.WriteLine("Dizide hassas kelimeler bulunur: Sun Quan!) );
} Console.ReadLine();
Örnek 2: İki parametreli bir yapıcı kullanıldığında, ikinci parametre durumu görmezden gelmeyi gösterir ve yaygın olarak kullanılır
var source = "123abc345DEf"; Regex regex = yeni Regex("def",RegexOptions.IgnoreCase); if (regex. IsMatch(kaynak))
{ Console.WriteLine("Dizide hassas kelimeler var: def!) );
} Console.ReadLine();
Regex sınıfını kullanarak onu değiştirin
Örnek 1: Basit durum
var source = "123abc456ABC789"; Statik yöntem var newSource=Regex.Replace(source,"abc","|",RegexOptions.IgnoreCase); Örnek yöntemi Regex regex = yeni Regex("abc", RegexOptions.IgnoreCase); var newSource = regex. Replace(kaynak, "|"); Console.WriteLine("Orijinal dizeni:"+kaynak); Console.WriteLine("Değiştirilen düzü:"+newSource); Console.ReadLine();
Sonuç:
Orijinal dizeli: 123abc456ABC789
Değiştirilen dizi: 123|456|789
Örnek 2: Eşleştirilen seçenekleri html koduyla değiştirerek MatchEvaluator delegasyonunu kullandık
var source = "123abc456ABCD789"; Regex regex = yeni Regex("[A-Z]{3}", RegexOptions.IgnoreCase); var newSource = regex. Replace(kaynak, yeni MatchEvaluator(OutPutMatch)); Console.WriteLine("Orijinal dizeni:"+kaynak); Console.WriteLine("Değiştirilen düzü:"+newSource); Console.ReadLine();
özel statik dizi OutPutMatch (Maç eşleşmesi)
{ "<b>" +eşleşme döndür. Value+ "</b>";
}
Çıktı:
Orijinal tel: 123abc456ABCD789
Değiştirilen dizeli: 123<b>abc</b>456<b>ABC</b>D789 |