Cursos / Eletrônica / Programação Estruturada / Aula 07

arrow_back Aula 07 - Manipulação de Strings

3. Buscas em Strings

Muitas vezes queremos verificar se um determinado texto contém uma palavra, ou se inicia ou termina em outra, etc. Além disso, podemos querer saber a posição não de uma palavra, mas de um caractere específico, ou pelo menos se a String contém esse determinado caractere. Vejamos como funciona isso através do seguinte código:

O programa mostrado faz uso da função indexOf(), a qual recebe um caractere como parâmetro e retorna a posição da primeira ocorrência desse caractere no texto representado no exemplo pela variável nome1. Caso o caractere não exista, a função irá retornar o valor -1. Também podemos verificar se existe mais de uma ocorrência. Veja agora como isso pode ser feito através do programa a seguir:

O ProgramaStringPosicaoChar faz uso de duas variáveis, uma chamada “inicio” e outra “posição”. A primeira variável é usada para indicar a partir de qual posição devemos buscar o caractere na String, por isso ela é inicializada com zero, o primeiro índice válido. Já a variável “posição” indica a localização do último caractere ponto encontrado. Ela é inicializada com o retorno da função indexOf(), ou seja, com o índice da primeira ocorrência do caractere procurado. Em seguida, temos um laço onde sua condição verifica se o início é maior ou igual ao tamanho da String (já percorremos toda a String?) ou se o valor da variável “posição” é -1 (o índice encontrado não é válido, então não há mais caractere procurado na String?).

Caso a execução do programa entre no laço, isso quer dizer que a variável “posição” tem um índice válido do caractere procurado. Para encontrar a posição do próximo caractere, vamos procurar a partir do índice da última ocorrência encontrada — mais um (posicao + 1). Por fim, realizamos a busca usando novamente a função indexOf(), só que agora passando como parâmetro não só o caractere procurado, mas também a variável “inicio”, indicando a partir de que posição na String (da esquerda para a direita) a busca deve ser realizada. Um pouquinho mais elaborado, mas funciona!

Versão 5.3 - Todos os Direitos reservados