Tutorial regular expressions com C#


Abaixo algumas regular expressions úteis e o código para utilização em C#

Remover todos os caracteres HTML de uma string

<[^>]*>

Para fazer essa substituição no C#, utilize o seguinte código:

string ret = System.Text.RegularExpressions.Regex.Replace(html, @"<[^>]*>", String.Empty);

Obter caracteres numéricos de uma string

[^0-9]+?
string ret = System.Text.RegularExpressions.Regex.Replace(text, @"[^0-9]+?", string.Empty);

Substituir caracteres especiais de uma string

string ret = System.Text.RegularExpressions.Regex.Replace(ret, @"[^0-9a-zA-ZéúíóáÉÚÍÓÁèùìòàÈÙÌÒÀõãñÕÃÑêûîôâÊÛÎÔÂëÿüïöäËYÜÏÖÄçÇ]+?", string.Empty);

Para permitir espaços adicione: \s:

string ret = System.Text.RegularExpressions.Regex.Replace(ret, @"[^0-9a-zA-ZéúíóáÉÚÍÓÁèùìòàÈÙÌÒÀõãñÕÃÑêûîôâÊÛÎÔÂëÿüïöäËYÜÏÖÄçÇ\s]+?", string.Empty);

Veja um exemplo em C# no seguinte artigo: /csharp/remover-caracteres-especiais-e-acentuacao-com-regular-expression-e-csharp/

Listar todos os caracteres de uma string entre chaves “{xxx}”

System.Text.RegularExpressions.Regex.Matches("aaa{111}ccc{222}", @"\{(\w)*\}")

Considerações:

Exemplo:

Verificar se uma string contém duas palavras, com case insensitive

A RegularExpression abaixo verifica se a string contém as palavras “cpf” e “duplicado”:

var regex = System.Text.RegularExpressions.Regex(@"^(?i)(?=.*\bcpf\b)(?=.*\bduplicado\b).*$");
regex.IsMatch("Teste CPF dkdkdkdk duplicado no sistema");

Referências:


Comentários