Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.144.96.159] |
|
Сообщ.
#1
,
|
|
|
Мне нужно нечувствительный к регистру (верхний/нижний) вариант этой функции.
Есть str_ireplace, но он доступен только с 5-й версии php... а в 4-й? |
Сообщ.
#2
,
|
|
|
Как вариант могу предложить использовать сначала strtolower(), а потом уже вызывать str_replace(). Либо можно еще и ... дальше мысль останавливается
А если подробнее в чем задача? |
Сообщ.
#3
,
|
|
|
Пиши функцию ручками. Или регулярные выражения используй.
echo preg_replace('/([cC][лЛ][вВ][оО])/i','<b>\1</b>',$str); |
Сообщ.
#4
,
|
|
|
Можно и вариант Тишайшего... а задача в том, чтобы заменить [MY_TEG] - на некий MY_TEXT, не зависимо от регистра My_tEg
??? |
Сообщ.
#5
,
|
|
|
function strgetc(&$str) { $c=$str[0]; $str=substr($str,1); return $c; } function strnocase($str) { $lstr=strCyrEnToLower($str); $ustr=strCyrEnToUpper($str); unSet($str); $nstr=''; while(strlen($str)) $nstr.='['.preg_quote(strgetc($lstr[0]).strgetc($ustr[0])).']'; return $nstr; } function strCyrEnToLower($str) { return strtr(strToLower($str),'абвгдеёжзийклмнопрстуфхцчшщъыьэюя','АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ'); } function strCyrEnToUpper($str) { return strtr(strToUpper($str),'АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ','абвгдеёжзийклмнопрстуфхцчшщъыьэюя'); } ................. echo preg_replace('/'.strnocase($strtoreplace).'/i',$strtoplace,$str); |
Сообщ.
#6
,
|
|
|
Цитата зачем здесь эта функция? Есть же функции попроще, превращающие регистр в маленький или большой... ?strCyrEnToLower Можно объяснить назначение каждой отдельной функции??? |
Сообщ.
#7
,
|
|
|
Budda, а зависит от настроек Апача. Часто бывает, что strtolower для кириллицы не работает.
|
Сообщ.
#8
,
|
|
|
Есть и "нормальные" типа strToLower, strToUpper, а я хочу фильтеперсовую:);
strgetc - возвращает первый символ из строки и удаляет его из исходной. strnocase - для преобразования строк вроде 'Слово' в строки вроде '[сС][лЛ][оО][вВ][оО]', чтобы потом вставлять в регулярные выражения. preg_quote - встроенная функция. Ставит перед "опасными" для регулярных выражений символами знак \. |