| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/12/2007 16:00:18
|
Giulliano
GUJ Master
![[Avatar]](/images/avatar/7f5a17b792b687fc4c227a5c5e569dd8.jpg)
Membro desde: 14/11/2006 19:29:38
Mensagens: 1627
Localização: São Paulo
Offline
|
opa opa....galera é o seguinte, comecei a estudar os motores regex...
mas não estou conseguindo usar direito ou não estou sanbendo traduzir a API.
quero entender os seguintes patterns:
f??
f*?
Então montei o seguinte código:
Se a tradução estiver correta ele deveria trazer UM ou NENHUM em tudo. A minha palavra tem DUAS letras "f"..e ele imprime que achou ela duas vezes. Então eu troquei para o pattern seguinte f*? Segundo a tradução nenhuma ou mais vezes...mas o resultado é o mesmo...
Então fiquei na mesma qual é a diferença e a aplicação correta disso ????
valews
|
Oracle Certified Master, Java EE 5 Enterprise Architect
Oracle Certified Professional Java Programmer
GiuLLianO MoRRoNi
<UnTouChAbLe> |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/12/2007 17:14:23
|
Giulliano
GUJ Master
![[Avatar]](/images/avatar/7f5a17b792b687fc4c227a5c5e569dd8.jpg)
Membro desde: 14/11/2006 19:29:38
Mensagens: 1627
Localização: São Paulo
Offline
|
Pra quem precisar.... http://java.sun.com/docs/books/tutorial/essential/regex/quant.html O que acontece é o seguinte: f?? procura pela letra f uma ou nenhuma vez. e Retorna todos os caracteres. f*? faz a mesma coisa com a diferença de que * exibe todos os caracteres encontrados de uma vez só e f?? exibe caracter a caracter... mais dúvidas o link é bastante explicativo... [/]'s
This message was edited 1 time. Last update was at 07/12/2007 09:18:28
|
Oracle Certified Master, Java EE 5 Enterprise Architect
Oracle Certified Professional Java Programmer
GiuLLianO MoRRoNi
<UnTouChAbLe> |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/12/2007 15:50:31
|
O_SANTO_
Entusiasta Java
![[Avatar]](/images/avatar/676b58765ad419a5b7af6a959d4de341.jpg)
Membro desde: 27/07/2005 16:45:24
Mensagens: 17
Localização: Brasil : Nordeste : Paraíba : João Pessoa
Offline
|
Pelo meu pequeno conhecimento em regex, o que está acontecendo aí é que você está utilizando o [].
Se eu tiver uma expressão regular [abc], ele tentará casar qualquer o termo com os possíveis itens do conjunto, que neste caso é o a, b, c.
Acredito que a expressão regular está entendendo que você está procurando pelos literais f, * ou ?.
Tenta colocar realizar o teste com esse ex:
String palavra = "Difere*ncaf?";
E me diz o que o código retorna.
|
http://ricardojrm.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/12/2007 15:57:27
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Para quem quer saber direitinho Regex, é só acessar o site do sr. Aurélio:
http://www.aurelio.net/er/
Ou então ler este post:
http://www.javafree.org/javabb/viewtopic.jbb?t=5090
|
|
|
 |
|
|