Mudanças entre as edições de "Voipr/Manual/Regex"

De BrByte Wiki
< Voipr‎ | Manual
Linha 1: Linha 1:
 
== Expressão Regular ==
 
== Expressão Regular ==
  
Uma expressão regular especifica um conjunto de sequências de caracteres. Um membro deste conjunto de seqüê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.
+
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.
  
  
Linha 9: Linha 9:
  
  
* '''$ Cifra ou simbolo de dolar '''
+
* '''$ Cifra ou simbolo de dólar '''
  
 
Corresponde ao final do regex
 
Corresponde ao final do regex
Linha 20: Linha 20:
  
  
* '''() Parentesis '''
+
* '''() Parêntesis '''
  
 
Corresponde a um agrupamento de entrada  
 
Corresponde a um agrupamento de entrada  
Linha 30: Linha 30:
  
 
Corresponde a um agrupamento de entrada  
 
Corresponde a um agrupamento de entrada  
Por exemplo [1234], significa que a entrada deve ter um dos numeros informados (1,2,3 ou 4)  
+
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 '''
 
* '''- Traço ou sinal de menos '''
Linha 53: Linha 53:
  
 
A entrada deve corresponder m vezes  
 
A entrada deve corresponder m vezes  
Por exemplo [0-9]{8}, qualquer número que tenha 8 digitos de 0 a 9  
+
Por exemplo [0-9]{8}, qualquer número que tenha 8 dígitos de 0 a 9  
  
  
Linha 59: Linha 59:
  
 
A entrada deve corresponder m vezes até o infinito.  
 
A entrada deve corresponder m vezes até o infinito.  
Por exemplo [0-9]{4,}, qualquer número que tenha no minimo 4 digitos de 0 a 9, sem limite máximo  
+
Por exemplo [0-9]{4,}, qualquer número que tenha no minimo 4 dígitos de 0 a 9, sem limite máximo  
  
  
Linha 65: Linha 65:
  
 
A entrada deve corresponder m vezes até n  
 
A entrada deve corresponder m vezes até n  
Por exemplo [0-9]{1,4}, qualquer número que tenha entre 1 a 4 digitos, de 0 a 9  
+
Por exemplo [0-9]{1,4}, qualquer número que tenha entre 1 a 4 dígitos, de 0 a 9  
  
  
Linha 71: Linha 71:
  
 
Uma expressão seguida de ?, significa que ela pode ou não tem essa entrada.  
 
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 começe ou não com 067 seguido de 8 digitos de 0 a 9  
+
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 '''
 
* '''| Pipe ou barra reta '''
  
Uma explessão separada com |, serve para informar que o valor deve ser uma ou outra entrada.  
+
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
 
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
  
Linha 84: Linha 84:
  
  
* Qualquer número que tenha exatamente 8 (oito) digitos
+
* Qualquer número que tenha exatamente 8 (oito) dígitos
  
 
<pre>
 
<pre>
Linha 93: Linha 93:
 
^(........)$ - 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 - 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, do começo ao fim, similar a opção acima
........ - qualquer entrada que tenha 8 caracteres, no minimo. '''não recomendado'''
+
........ - qualquer entrada que tenha 8 caracteres, no minimo - não recomendado
 
</pre>
 
</pre>
  
Linha 102: Linha 102:
 
^([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 - 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 - 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'''
+
[0-9]{1,8} - qualquer número que tenha entre 1 e 8 dígitos, no minimo - não recomendado
 
</pre>
 
</pre>
  
Linha 113: Linha 113:
 
^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, 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'''
+
067........ - qualquer número que comece com 067, precedido por 8 caracteres, no minimo - não recomendado
 
</pre>
 
</pre>
  
Linha 120: Linha 120:
  
 
<pre>
 
<pre>
^(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)?([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. <b>não recomendado</b>
+
(067)?........ - qualquer número que comece ou não com 067, precedido por 8 caracteres, no minimo - não recomendado
 
</pre>
 
</pre>
  
Linha 128: Linha 128:
  
 
<pre>
 
<pre>
^(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
+
^(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[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
+
^(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
 
</pre>
 
</pre>
  
Linha 153: Linha 153:
 
^(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]]
  
553..  - Qualquer número que tenha 5 dígitos e comece com 553, [[Voipr/Aplicativos/Route Number|RN1 das operadoras de celular]] - <b>não recomendado</b>
+
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
  
 
</pre>
 
</pre>

Edição das 00h31min de 10 de março de 2015

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