Expressões regulares

6 respostas
D

Pessoal,

Vocês poderiam me explicar o que esta expressão regular significa?

Pattern attPattern = Pattern.compile("\[(.*?)\]")

Eu estou lendo artigos sobre este assunto, porém to precisando deste significado o quanto antes!

Desde já, agredeço a todos.

6 Respostas

saoj

\[ = escapou o [

\] = escapou o ]

. = qualquer coisa menos \n

  • = uma ou 0 repetições

? = caracter opcional (é totalmente redundante nessa regex)

o parêntesis vc sabe para que serve, certo?

Muda o título do seu post para “Expressão Regular difícil…” assim mais pessoas irão ajudar…

B

\ em java é para escapar uma , [ em regex é para achar um [, que normalmente é um caracter especial

\[ então é para achar uma [,

(.*?) é um grupo para achar zero ou mais caracteres antes do próximo grupo

\] é para achar uma ]

Ou seja, ela acha qualquer coisa entre [ ].

D

Não…
? precedido por * significa lazy… O que vai fazer que a busca pare no primeiro ] que encontrar… e não no ultimo

abraços

D

Veleu galera!

Vocês me ajudaram e muito!

Brigadão, e até a próxima! :smiley:

saoj

danielbadawi:
saoj:

? = caracter opcional (é totalmente redundante nessa regex)


Não…
? precedido por * significa lazy… O que vai fazer que a busca pare no primeiro ] que encontrar… e não no ultimo

abraços

Não sabia disso! Muito obrigado pela dica!

D

saoj:

Não sabia disso! Muito obrigado pela dica!

:stuck_out_tongue:

Regex é realmente bem interessante! Quando acho que ja conhecia o suficiente, sempre aprendo uma coisa nova!

abraços :wink:

Criado 17 de outubro de 2008
Ultima resposta 17 de out. de 2008
Respostas 6
Participantes 4