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.
saoj
#2
\[ = escapou o [
\] = escapou o ]
. = qualquer coisa menos \n
? = 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…
\ 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 [ ].
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
Veleu galera!
Vocês me ajudaram e muito!
Brigadão, e até a próxima! 
saoj
#6
[quote=danielbadawi][quote=saoj]
…
? = caracter opcional (é totalmente redundante nessa regex)
…
[/quote]
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[/quote]
Não sabia disso! Muito obrigado pela dica!
[quote=saoj]
Não sabia disso! Muito obrigado pela dica![/quote]

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