Uso
O uso de regex, serve para identificar uma #Expressão Regular, ou seja padrões de entrada de valores.
Sendo utilizado no aplicativos de Redirecionamento (para detecção do número discado), Tarifa (para detecção do número discado) e Rota (para detecção do número discado e do Route Number da operadora).
^06732011173$ - identifica o número 06732011173 ^067........$ - identifica o número 067XXXXXXXX
Veja mais em #Exemplos, neste tópico
Expressão Regular
Uma expressão regular especifica um conjunto de sequências de caracteres. Um membro deste conjunto de sequências de caracteres é dito ser correspondido pela expressão regular. Alguns caracteres (ex: ^,.,{},[],\) têm um significado especial quando usado em uma expressão regular; outros caráteres significam eles mesmos.
- ^ Circunflexo
Corresponde ao começo do regex, exceto quando informado dentro de [], que passa a ser uma negação dos valores
- $ Cifra ou simbolo de dólar
Corresponde ao final do regex
- . Ponto
Corresponde a qualquer caractere Por exemplo (....), qualquer entrada que tenha 4 caracteres
- () Parêntesis
Corresponde a um agrupamento de entrada Por exemplo (40041001), significa que a entrada deve ser 40041001 Por exemplo (067), significa que a entrada deve ser 067
- [] Colchetes
Corresponde a um agrupamento de entrada Por exemplo [1234], significa que a entrada deve ter um dos números informados (1,2,3 ou 4)
- - Traço ou sinal de menos
Usado para informar um range de caracteres
Por exemplo [3-7] é equivalente a [34567]
- * Asterisco
Uma expressão seguida de *, significa, nenhuma ou varias vezes Por exemplo [0-9]*, equivalente a entrada vazia ou a repetição infinita de valores, Essa entrada equivale a [0,9]{0,}
- + Sinal de mais
Uma expressão seguida de +, significa, uma ou mais vezes Por exemplo [0-9]+, equivalente a [0-9][0-9]*. Essa entrada equivale a [0,9]{1,}
- {m} Chaves com um numero
A entrada deve corresponder m vezes Por exemplo [0-9]{8}, qualquer número que tenha 8 dígitos de 0 a 9
- {m,} Chave com um numero e virgula
A entrada deve corresponder m vezes até o infinito. Por exemplo [0-9]{4,}, qualquer número que tenha no minimo 4 dígitos de 0 a 9, sem limite máximo
- {m,n} Chaves com um numero, virgula e outro numero
A entrada deve corresponder m vezes até n Por exemplo [0-9]{1,4}, qualquer número que tenha entre 1 a 4 dígitos, de 0 a 9
- ? Sinal de interrogação
Uma expressão seguida de ?, significa que ela pode ou não tem essa entrada. Por exemplo (067)?[0-9]{8}, qualquer número que comece ou não com 067 seguido de 8 dígitos de 0 a 9
- | Pipe ou barra reta
Uma expressão separada com |, serve para informar que o valor deve ser uma ou outra entrada. Por exemplo (067|066)40041001, o número 40041001, precedido por 067 ou 066 Por exemplo (067|066)?40041001, o número 40041001, precedido ou não por 067 ou 066
Exemplos
- Qualquer número que tenha exatamente 8 (oito) dígitos
^([0-9]{8})$ - qualquer dígito que se repita 8 vezes - agrupando os dígitos - recomendado pois agrupa os valores ^[0-9]{8}$ - qualquer dígito que se repita 8 vezes - sem agrupar os dígitos, similar a opção acima [0-9]{8} - qualquer dígito que se repita 8 vezes - sem agrupar os dígitos, similar a opção acima ^.{8}$ - qualquer carácter que se repita 8 vezes ^(........)$ - qualquer entrada que tenha 8 caracteres, do começo ao fim - recomendado pois agrupa os valores ^........$ - qualquer entrada que tenha 8 caracteres, do começo ao fim, similar a opção acima ........ - qualquer entrada que tenha 8 caracteres, no minimo - não recomendado
- Qualquer número que tenha no minimo 1 (um) e no máximo 8 (oito) dígitos
^([0-9]{1,8})$ - qualquer número que tenha entre 1 e 8 dígitos - agrupando os dígitos - recomendado pois agrupa os valores ^[0-9]{1,8}$ - qualquer número que tenha entre 1 e 8 dígitos - sem agrupar os dígitos, similar a opção acima [0-9]{1,8} - qualquer número que tenha entre 1 e 8 dígitos, no minimo - não recomendado
Qualquer número que tenha exatamente 8 (oito) dígitos, e comece com 067
^(067)([0-9]{8})$ - qualquer número que tenha entre 1 e 8 dígitos, e comece com 067 - recomendado pois agrupa os valores ^(067)(........)$ - qualquer número que tenha entre 1 e 8 caracteres, e comece com 067, similar a opção acima ^067........$ - qualquer número que comece com 067, precedido por 8 caracteres, similar a opção acima ^067........$ - qualquer número que comece com 067, precedido por 8 caracteres, similar a opção acima 067........ - qualquer número que comece com 067, precedido por 8 caracteres, no minimo - não recomendado
Qualquer número que tenha exatamente 8 (oito) dígitos, e comece ou não com 067
^(067)?([0-9]{8})$ - qualquer número que comece ou não com 067, precedido por 8 dígitos - recomendado pois agrupa os valores (067)?........ - qualquer número que comece ou não com 067, precedido por 8 caracteres, no minimo - não recomendado
Qualquer número que tenha exatamente 8 (oito) dígitos, e comece ou não com 066, 067 ou 068
^(066|067|068)?([0-9]{8})$ - qualquer número que comece ou não com 066, 067 ou 068, precedido por 8 dígitos - recomendado pois agrupa os valores ^(06[678])?([0-9]{8})$ - qualquer número que comece ou não com 066, 067 ou 068, precedido por 8 dígitos - recomendado pois agrupa os valores ^(06(6|7|8))?([0-9]{8})$ - qualquer número que comece ou não com 066, 067 ou 068, precedido por 8 dígitos - recomendado pois agrupa os valores
Qualquer número que tenha exatamente 8 (oito) dígitos, precedido pelo 9 (nove) e comece ou não com o DDD
^(0[0-9]{2})?(9)?([0-9]{8})$ - qualquer número que comece ou não com 0 + DDD, precedido ou não por 9, e 8 dígitos. - recomendado pois agrupa os valores ^(0..)?(9)?(........)$ - qualquer número que comece ou não com 0 + DDD, precedido ou não por 9, e 8 caracteres, similar a opção acima
Qualquer número que tenha 5 dígitos, mais utilizado por RN1 (Route Number)
^(55320)$ - Qualquer número que tenha 5 dígitos e é igual a 55320, [[Voipr/Aplicativos/Route Number|RN1 da VIVO]] ^55320|55341$ - Qualquer número que tenha 5 dígitos e é igual a 55320 [[Voipr/Aplicativos/Route Number|RN1 da VIVO]] ou 55341 [[Voipr/Aplicativos/Route Number|RN1 da TIM]] ^(553..)$ - Qualquer número que tenha 5 dígitos e comece com 553, [[Voipr/Aplicativos/Route Number|RN1 das operadoras de celular]] 553.. - Qualquer número que tenha 5 dígitos e comece com 553, [[Voipr/Aplicativos/Route Number|RN1 das operadoras de celular]] - não recomendado
Qualquer numero de rota que tenha 5 dígitos com exceção das rotas 55320, 55321, 55323 e 55341.
^553((2[^013])|(4[^1])|([0135-9][0-9]))$