Forum Webscript.Ru

Программирование => Perl => Тема начата: Duke от 03 Мая 2003, 15:51:55

Название: Первую заглавной, остальные строчными
Отправлено: Duke от 03 Мая 2003, 15:51:55
Выручайте, что-то я совсем запарился

исходный текст лежит в массиве @model и состоит из трёх значений (LAND, CRUISER, 100), в цикле по-одному эти словечки извлекаются

исходный текст: LANDCRUISER100
надо получить : LandCruiser100

пишу так:
foreach $key(@model){ ($key)=$key=~/\\u\\w\\L\\w+\\Е/ };

скрипт работает, но ничерта не выводит
Название: Первую заглавной, остальные строчными
Отправлено: Mog. от 03 Мая 2003, 16:42:26
for(@model){ print if s/(\\w)(\\w+)/uc($1).lc($2)/ge}
Название: Первую заглавной, остальные строчными
Отправлено: mike от 03 Мая 2003, 19:41:28
foreach (@model) { print ucfirst lc }
Название: Первую заглавной, остальные строчными
Отправлено: Mog. от 03 Мая 2003, 19:48:05
mike круто!!!
Название: Первую заглавной, остальные строчными
Отправлено: Duke от 04 Мая 2003, 12:30:47
Большое спасибо обоим.

Разница вот лишь в чем, в решении от Mog., откорректированные значения записыватся в массив @model, а в решении от mike, они не записываются (?), хотя решение очень красивое :)
Название: Первую заглавной, остальные строчными
Отправлено: mike от 04 Мая 2003, 14:50:02
Цитировать
Duke:
они не записываются

Ну дык, если нужно записывать, то вместо print поставить присваивание :) Основное ведь - преобразование.

Mog.
[OFF];)[/OFF]