case insensitive string replace

4 отговора 136 прегледа
#1

case insensitive string replace

от два дни се блъскам в едно таковата и се чудя как да го опъна...

значи:

str_ireplace($query, "<font color=red>$AAAAAAA</font>", $string);

проблема е ако query e AbC а в стринг е aBC или ABC или Аbc или там всички възможни комбинации то на местото на $AAAAAA да застане това което е в стринга.

идва ми идея да вдигна кейс на стринга и на query и да намеря позициите и след това с разбиването на стринг на части да го подменям, ама това решение ми се вижда тежко и тромаво.

Има ли друг вариант, някой има ли идея как цялата работа да стане по-елегантна ?

-----------------------
гърбавия, ковчег ще го изправи
Отговор
в отговор на Bълk #2

Re: case insensitive string replace

axa :-)
preg_replace("/$query/i", "<font color=red>$AAAAAAA</font>", $string);

Отговор
в отговор на voyager #3

Re: колко съм тАп

[линк]


.... то даже е написано че е за хайлайт

-----------------------
гърбавия, ковчег ще го изправи
Отговор
в отговор на Bълk #4

Re: колко съм тАп

Това е, защото не беше пил бира до 3 часа вчера

Отговор
в отговор на voyager #5

a s cirilica?

а да имате идея защо не сработва с кирилица въпреки
setlocale(LC_ALL, 'bg_BG'); ?

Отговор