Fiz um busca com LIKE %$palavra% e para ser mais fácil a captura de resultados, passei pra lowercase tanto a tabela do mySQL quanto a palavra digitada na hora da busca.
Ou seja, ele faz a busca com tudo em lowercase, mas o meu retorno (impressão) do resultado vem com as letras conforme estão cadastradas...
Exemplo:
Digitei "Carro" na busca. Ele busca por "carro", passa pra lower a tabela no momento da busca e na hora de imprimir o resultado na tela me mostra conforme está cadastrado no database, "Carro".
Com isso, ao tentar destacar no texto a palavra procurada, não estou conseguindo. Pois ao tentar usar str_replace, ele vai procurar ou pela palavra com tudo em lowercase ou com tudo maiúsculo ou com.... enfim, são inúmeras possibilidades, e com str_replace não seria viável.
Pergunta: Pensei em usar ereg_replace, mas como que defino na ER para que a primeira letra possa ser maiúscula OU minúscula, e ambos os casos case?
Acho que não tem necessidade de fazer a mesma verificação para todas as letras da consulta do cabra (iria exigir muito do processamento e sem necessidade), mas se alguém puder me explicar como fazer com todas as letras, seria bem interessante também!
É isso

