За да използвате класа Regex, трябва да се позовавате на пространството от имена: използвайки System.Text.RegularExpressions;
Валидацията се реализира чрез класа Regex
Пример 1: Анотираният код прави същото, но единият е статичен метод, а другият е метод на инстанция
var source = "Лю Бей, Гуан Ю, Чжан Фей, Сун Цюан"; Regex regex = нов Regex ("Сун Цюан"); ако (regex. IsMatch (източник)) //{ Console.WriteLine("Низът съдържа чувствителни думи: Sun Quan!) ); //} ако (Regex.IsMatch (източник, "Sun Quan"))
{ Console.WriteLine("Низът съдържа чувствителни думи: Sun Quan!) );
} Console.ReadLine();
Пример 2: Използвайки конструктор с два параметъра, вторият параметър показва игнориране на случая и е често използван
var source = "123abc345DEf"; Regex regex = нов Regex("def",RegexOptions.IgnoreCase); ако (regex. IsMatch (източник))
{ Console.WriteLine("Низът съдържа чувствителни думи: def!) );
} Console.ReadLine();
Използвайте Regex клас, за да го замените
Пример 1: Проста ситуация
VAR източник = "123abc456ABC789"; Статичен метод var newSource=Regex.Replace(source,"abc","|",RegexOptions.IgnoreCase); Метод на инстанцията Regex regex = нов Regex("abc", RegexOptions.IgnoreCase); var newSource = regex. Replace(източник, "|"); Console.WriteLine("Оригинален низ:"+source); Console.WriteLine("Заменен низ:"+newSource); Console.ReadLine();
Резултат:
Оригинален низ: 123abc456ABC789
Заменен низ: 123|456|789
Пример 2: Заменяйки съвпадащите опции с html код, използвахме делегирането на MatchEvaluator
var source = "123abc456ABCD789"; Regex regex = нов Regex("[A-Z]{3}", RegexOptions.IgnoreCase); var newSource = regex. Замени (източник, нов MatchEvaluator(OutPutMatch)); Console.WriteLine("Оригинален низ:"+source); Console.WriteLine("Заменен низ:"+newSource); Console.ReadLine();
private static string OutPutMatch (Match match)
{ връщане "<b>" + съвпадение. Стойност+ "</b>";
}
Изход:
Оригинален низ: 123abc456ABCD789
Заменена струна: 123<b>abc</b>456<b>ABC</b>D789 |