Percorrendo STRING e gravando a posição inicial de uma sequência de caracteres

5 respostas
M

Olá pessoal,

estou com alguns problemas em um programa que estou fazendo, já resaltando que é um programa para o curso que estou fazendo, o que foi pedido para fazer e ler um arquivo .TXT e achar uma certa sequencia de caracteres que o usuario passa, porem não pode ser usado um sistema de busca já implementado, nós devemos implementar o mesmo.

o programa está quase pronto, mas o meu problema é: em uma linha do arquivo pode existir mais de uma vez aquela sequencia de caracteres, necessito gravar qual a coluna em que começa esta sequencia, mas não sei como implementar isto.

OBS: meu arquivo de texto foi dividido por linha dentro de um array.

5 Respostas

E

O método indexOf retorna a primeira posição onde tal sequência foi encontrada (você precisa se lembrar que a primeira posição é zero, talvez tenha de somar 1)

Se não achar, indexOf retorna -1.

M

obrigado, mas não resolveu, pois só retorna 1 vez, vamos supor que tenho a seguinte frase:

Minha mãe não é mãe de meu irmão

quero localizar a palavra mãe, com o indexOf só vai mostrar a posição 7, que é onde se encontra a primeira palavra, mas a segunda vez não vai aparecer, ou seja, a que está na posição 17.

Por favor me corrija se eu estiver equivocado.

E

Ah, você não se explica direito. Pensei, pelo que você disse, que você precisasse só da primeira posição.

Para as outras posições, use indexOf com 2 parâmetros.

http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#indexOf(java.lang.String,%20int)

M

Obrigado, irei implementar e qualquer coisa retorno ao tópico para maiores duvidas.

M

Infelizmente este comando também não se encaixa no que necessito, achei aqui no GUJ o que pode ser minha solução, segue o link:

http://www.guj.com.br/java/203221-string-em-java-procurar-um-caracter

Obrigado pela ajuda.

Criado 26 de março de 2013
Ultima resposta 26 de mar. de 2013
Respostas 5
Participantes 2