Para usar a classe Regex, você precisa referenciar o namespace: usando System.Text.RegularExpressions;
A validação é implementada usando a classe Regex
Exemplo 1: O código anotado faz a mesma coisa, mas um é um método estático e o outro é um método de instância
var source = "Liu Bei, Guan Yu, Zhang Fei, Sun Quan"; Regex regex = novo Regex ("Sun Quan"); if (regex. IsMatch (fonte)) //{ Console.WriteLine("A string contém palavras sensíveis: Sun Quan!) ); //} if (Regex.IsMatch (fonte, "Sun Quan"))
{ Console.WriteLine("A string contém palavras sensíveis: Sun Quan!) );
} Console.ReadLine();
Exemplo 2: Usando um construtor com dois parâmetros, o segundo parâmetro indica ignorar o caso e é comumente usado
var source = "123abc345DEf"; Regex regex = novo Regex("def",RegexOptions.IgnoreCase); if (regex. IsMatch (fonte))
{ Console.WriteLine("String contém palavras sensíveis: def!) );
} Console.ReadLine();
Use a classe Regex para substituí-la
Exemplo 1: Situação simples
fonte var = "123ABC456ABC789"; Método estático var newSource=Regex.Replace(source,"abc","|",RegexOptions.IgnoreCase); Método de instância Regex regex = novo Regex("abc", RegexOptions.IgnoreCase); var newSource = regex. Replace(fonte, "|"); Console.WriteLine("String original:"+source); Console.WriteLine("Substituída string:"+newSource); Console.ReadLine();
Resultado:
Sequência original: 123ABC456ABC789
Corda substituída: 123|456|789
Exemplo 2: Substituindo as opções combinadas por código html, usamos a delegação MatchEvaluator
fonte var = "123ABC456ABCD789"; Regex regex = novo Regex("[A-Z]{3}", RegexOptions.IgnoreCase); var newSource = regex. Replace(source,new MatchEvaluator(OutPutMatch)); Console.WriteLine("String original:"+source); Console.WriteLine("Substituída string:"+newSource); Console.ReadLine();
string estática privada OutPutMatch (Match match)
{ Retorne "<b>" +match. Valor+ "</b>";
}
Saída:
String original: 123abc456ABCD789
Corda substituída: 123<b>abc</b>456<b>ABC</b>D789 |