Artigos mais populares : Configurando a integração com o WhatsAppExcluir a integração comercial da Flowics com o Facebook
Construindo sua própria expressão regular
As expressões regulares são construídas colocando os vários componentes da expressão entre um par de delimitadores. Em JavaScript, os delimitadores são um par de caracteres de barra (/), conforme mostrado no exemplo a seguir.
/expression/
Iniciar ^
Fim $
^ \ d {2} $
A seguir estão alguns metacaracteres comuns de regex e exemplos do que seria ou não compatível.
Metacaractere |
Descrição |
Exemplos |
\ré |
Inteiro 0 - 9 |
\ d \ d \ d = 327 \ d \ d = 81 \ d = 4 ----------------------------------------- \ d \ d \ d ≠ 24631 \ d \ d \ d não retornará 24631 porque 24631 contém 5 dígitos. \ d \ d \ d corresponderá apenas a uma string de 3 dígitos. |
\ W |
Caracteres alfanuméricos |
\ w \ w \ w = "cachorro" \ w \ w \ w \ w = "mula" \ w \ w = "a" ----------------------------------------- \ w \ w \ w = 467 \ w \ w \ w \ w = 4673 ----------------------------------------- \ w \ w \ w ≠ "navio" \ w \ w \ w não retornará "navio" porque "navio" contém 4 caracteres. ----------------------------------------- \ w ≠! \ w não retornará o ponto de exclamação "!" porque é um caractere não alfanumérico. |
\ W |
Símbolos |
\ W =% \ W = # \ W \ W \ W = @ #% ----------------------------------------- \ W \ W \ W \ W ≠ dog8 \ W \ W \ W \ W não retornará "dog8" porque d, o, ge 8 são caracteres alfanuméricos. |
[Arizona] [0-9] |
Conjunto de caracteres, pelo menos um dos quais deve corresponder, mas não mais do que um, a menos que especificado de outra forma. A ordem dos personagens não importa. |
pand [ora] = panda pand [ora] = pando ----------------------------------------- pand [ora] ≠ Pandora pand [ora] não retorna "pandora" porque está implícito em pand [ora] que apenas 1 caractere pode ser retornado em [ora]. (Os quantificadores que permitirão a pand [ora] corresponder a "pandora" serão discutidos abaixo). |
(para BC) -123 |
Grupo de caracteres, corresponde a abc ou 123 caracteres na ordem exata. |
pand (ora) = pandora pand (123) = pand123 ----------------------------------------- pand (remar) ≠ pandora pand (remo) não corresponde a "pandora" porque procura a frase exata "pandoar". |
| |
Alternar: permite combinações alternativas. | funciona como o booleano OR. |
pand (abc | 123) = "pandora" OU "pand123" |
{norte} |
Corresponde quando o caractere anterior, ou grupo de caracteres, ocorre exatamente n vezes. |
\ d {3} = 836 \ d {3} = 139 \ d {3} = 532 ----------------------------------------- pand [ora] {2} = "pandar" pand [ora] {2} = "pandoo" pand (ora) {2} = "pandoraora" ----------------------------------------- Pandora [ora] {2} ≠ Pandora pand [ora] {2} não corresponderá a "pandora" porque o quantificador {2} permite apenas 2 letras do conjunto de caracteres [ora]. |
{Novo México} |
Corresponde quando o caractere anterior, ou grupo de caracteres, aparece pelo menos n vezes e no máximo m vezes. |
\ d {2,5} = 97430 \ d {2,5} = 9743 \ d {2,5} = 97 ----------------------------------------- \ d {2,5} ≠ 9 9 não corresponde porque tem 1 dígito, portanto, está fora do intervalo de caracteres. |
? |
O ponto de interrogação corresponde quando o caractere que precede o? o sinal ocorre 0 ou 1 vez apenas, tornando a correspondência de caracteres opcional. |
colou? r = "cor" (u é encontrado 1 vez) colou? r = "cor" (u é encontrado 0 vezes) |
* |
O asterisco corresponde quando o caractere antes de * corresponde a 0 ou mais vezes. NOTA: * em RegEx é diferente de * em dtSearch. A expressão regular * pede para encontrar onde o caractere (ou agrupamento) que precede * ZERO ou mais vezes foi encontrado. dtSearch * pede para encontrar onde a cadeia de caracteres que precede * ou segue * 1 ou mais vezes foi encontrada. |
tre * = "árvore" (e é encontrado 2 vezes) tre * = "tre" (e é encontrado 1 vez) tre * = "tr" (e é encontrado 0 vezes) ----------------------------------------- tre * ≠ "árvores" tre * não corresponderá ao termo "árvores porque, embora" e "seja encontrado duas vezes, ele é seguido por" s ", que é ignorado na expressão regular." |
+ |
O sinal de adição corresponde quando o caractere anterior ao + corresponde 1 ou mais vezes. O sinal + torna a correspondência de caracteres obrigatória. |
tre + = "árvore (e é encontrado 2 vezes) tre + = "tre" (e é encontrado 1 vez) ----------------------------------------- tre + ≠ "tr" (e é encontrado 0 vezes) tre + não corresponderá a "tr" porque e é encontrado zero vezes em "tr". |
. (período) |
O ponto final corresponde a qualquer caractere alfanumérico ou símbolo. |
tonelada. = "tom" tonelada. = "ton #" tonelada. = "ton4" ----------------------------------------- tonelada. ≠ "tons" tonelada. não corresponderá ao termo "sombras" porque. por si só vai corresponder a um único caractere, aqui, na quarta posição do termo. Em "tons", o s é o quinto caractere e é ignorado na expressão regular. |
. * |
Combine os metacaracteres. e *, nessa ordem. * para corresponder a qualquer caractere 0 vezes ou mais. NOTA:. * Em RegEx, é equivalente ao operador dtSearch wildcard *. |
tr. * = "tr" tr. * = "tre" tr. * = "árvore" tr. * = "árvores" tr. * = "alimentador" tr. * = "esteira" |
É sempre muito importante testar seu regex antes de publicá-lo! Dessa forma, você garante que os dados que deseja coletar estão corretos. Aqui está um testador RegEx online gratuito: https://www.regextester.com/