Como fazer com o 'indexOf()'

Olá pessoaALL,

Estou utilizando o método ‘indexOf(str)’ para obter o índice de uma string pesquisada. O problema é que a ‘str’ utilizada como parâmetro deve ignorar CAIXA ALTA e caixa baixa da string que estou querendo obter seu índice. Por exemplo:

str = FUNC;
string = funcionario;

string.indexOf(str); retorna -1, ou seja, não achou ‘str’ em ‘string’

Como eu faço?

Valeu

 string.toUpperCase().indexOf(str.toUpperCase())

ou se fizer = usa a string.equalsIgnoreCase()

:mrgreen:

Blz,

Tem só um detalhe que esqueci de mencionar.

Em meu formulário, onde realizo a pesquisa, tenho um campo onde informo um termo, ou um pedaço dele, exemplo: funcionario ou FUNC ou Func.
Ao retornar a pesquisa, eu devo grifar o termo pesquisado que vem do banco, logo se eu pesquisei ‘FUNC’ e no BD existe ‘funcionario’ o que vai ser exibido é ‘FUNCionario’ sendo que deveria ser exibido ‘funcionario’.

Será que ainda existe alguma solução inteligente?

pô, desculpa ae. minha solução não foi inteligente… :mrgreen: :mrgreen:

OPPPSSS…

Foi mau da minha parte.
Não que sua solução não tenha sido inteligente, pelo contrário… É que fiz uma lógica muito tosca para sanar o problema e queria saber se existe alguma forma mais “inteligente” para resolver… de qq forma valeu.

tá ae. você pode usar regular expressions. essa é uma solução elegante. :twisted:

Poderia dar um exemplo, pois meu conhecimento é curto.

esse era meu medo :mrgreen:

http://java.sun.com/docs/books/tutorial/extra/regex/matcher.html

veja o tópico “Using replaceFirst(String) and replaceAll(String)”.

Caraca FOIA, tá F…

Por que não consigo importar a java.util.regex.*

Meu JDK é 1.3. Já existia expressões regulares?

:mrgreen:

Pois é, então fai ficar tosco mesmo…

Valeu