| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 16/08/2011 08:44:48
|
diego_qmota
JavaEvangelist
![[Avatar]](/images/avatar/e355819c0931a90b594aeb8d6a73587f.jpg)
Membro desde: 28/09/2008 15:44:35
Mensagens: 346
Localização: Paulínia
Offline
|
Bom dia,
Gostaria de saber se alguém conhece um algoritmo que permita identificar em um determinado texto:
Trechos de texto repetidosTrechos de texto varíaveisSeparar ambos em um mapa onde a chave é a ordem (índice) em que os trechos estão no texto, e o valor do Map é o objeto que representa o trecho repetido/varíavel
A idéia é quebrar linhas de texto em estruturas onde eu possa extrair o texto repetido e o que varia e saber a ordem em que eles aparecem no texto original.
This message was edited 1 time. Last update was at 16/08/2011 08:45:01
|
"Go ahead, make my day!" |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 16/08/2011 08:52:53
|
roger_rf
GUJ Master
Membro desde: 29/04/2009 07:40:19
Mensagens: 1091
Localização: Natal/RN
Offline
|
Talvez seu problema possa ser resolvido com expressões regulares, cuja função é identificar padrões em textos:
http://download.oracle.com/javase/tutorial/essential/regex/
http://www.regular-expressions.info/java.html
O projeto Apache Lucene permite fazer buscas em textos, talvez seja útil também:
http://lucene.apache.org/java/docs/index.html
|
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 16/08/2011 09:27:57
|
emersonat
Thread.start()
Membro desde: 12/02/2009 11:05:28
Mensagens: 29
Offline
|
voce pode tentar usar o pacote regex....
Como por exemplo as classes Pattern e Matcher...
onde como o roger_rf disse vc pode usar expessões regex no lugar da string xpto para procurar por padrões e criar sua logica para colocar no map os resultados dentro do while.
|
Oracle Certified Java Programmer 6.0 - OCJP
http://emersondeandrade.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 16/08/2011 10:09:58
|
diego_qmota
JavaEvangelist
![[Avatar]](/images/avatar/e355819c0931a90b594aeb8d6a73587f.jpg)
Membro desde: 28/09/2008 15:44:35
Mensagens: 346
Localização: Paulínia
Offline
|
O primeiro testes que fiz, para ver se dá certo, foi com o StringTokenizer, desta forma:
Embora tenha até conseguido separar vários trechos, para outros, não detectou corretamente, colocando String Fixa como String Varíavel e gerando várias String Varíaveis que não têm nada a ver (espaços em branco).
O problema é que para expressões regulares, teria que gerá-las dinamicamente...
Teria que ir extraindo as palavras, montar as expressões e procurar padrões?
Como ficaria, mais ou menos?
Para cadeias de string´s mais simples funcionou:
No entanto, para cadeias complexas (segue exemplo com instruções sql):
Este pode ser o caminho certo? Ou agrego expressões regulares aí?
This message was edited 6 times. Last update was at 16/08/2011 10:24:35
|
"Go ahead, make my day!" |
|
|
 |
|
|
|
|