Программирование > PHP

Как пересести слово в нижний регистр?

(1/2) > >>

kot:
Перевести надо именно слово, написанное ПОЛНОСТЬЮ большими буквами. Задача следующая: Есть текст, в котором некоторые слова пишутся БОЛЬШИМИ буквами. Надо только эти слова перевести в нижний регистр. Причем не допускаются следующие замены:
Слово --> слово,
сЛово --> слово...

Заранее огромное спасибо.

Макс:
Вроде так работает:

<?php
$a="АААа БББ ббб AS";
function my_lowcase($source_text)
{
   $regExp=\'/(?<=\\s)([A-ZА-Я]+)(?=\\s|$)/es\';
   $res_text=preg_replace($regExp,"strtolower(\'\\\\1\')",$source_text);
   return $res_text;
}

echo strtolower($a)."\\n";
echo my_lowcase($a);;
?>

kot:
Не работает :-(
Вот что я вижу при выполнении этого кода:

1) АААа БББ ббб as
Ну, с этим понятно, потому что strtolower работает только с английскими буквами и не делает разницу полностью ли слово написано заглавными или нет...

2) АААа БББ ббб AS - т.е. my_lowcase вообще ничего не делает :-(

В чем тут проблема?
Заранее огромное спасибо.

DaBugi:
$second=strtr($from,"АБВГДЕЁЖЗИКЛМНОПРСТУФХЦЧШЩЬЪЭЮЯ","абвгдеёжзиклмнопрстуфхцчшщьъэюя");

Соответственно у тебя в from - исходная строка, в second - уже обработанная...

Только алфавит проверьте, я с русским в неладах :)

kot:
Это тоже не то, что надо, потому как переведутся в нижний регистр ВСЕ заглавные буквы (я уже так пробовал), а мне надо (напоминаю в очередной раз:) чтобы пребразовывались слова которые ПОЛНОСТЬЮ написаны большими буквами...

Какие есть еще варианты?
Заранее огромное спасибо.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии