| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: Общие вопросы > помогите узнать кол-во слов |
| Автор: walan 10.3.2008, 23:28 |
| Проблема в следующем: Есть фаил "stix.txt" в нем написан стих как на PERL написать скрипт что бы подсчитал все слова и буквы в нем? |
| Автор: Itsys 10.3.2008, 23:44 | ||
Помоему так должно сработать, не проверял |
| Автор: walan 11.3.2008, 00:04 |
| Itsys забыл довавить, что бы и вывести эти данные на экран представить сколько всего слов и всех букв в файле, вот ( |
| Автор: shamber 11.3.2008, 10:15 |
| walan, начните наверно с раздела http://forum.vingrad.ru/forum/topic-1167.html и почитайте документацию. Если вы не знаете как использовать функцию print это вам очень поможет. |
| Автор: amg 11.3.2008, 14:44 | ||
ЗЫ walan, прислушайтесь к совету shamber'а |
| Автор: ginnie 11.3.2008, 17:52 | ||
Уважаемый amg, вроде знаки препинания буквами не считаются, кроме того, может быть и такой текст
|
| Автор: walan 11.3.2008, 18:47 | ||||
текст |
| Автор: ginnie 11.3.2008, 18:56 | ||
Уважаемый Itsys,
split() вызывается в скалярном контексте, поэтому явно указывать скалярный контекст при помощи scalar не нужно. |
| Автор: Itsys 11.3.2008, 22:24 |
| ginnie, Привычка... |
| Автор: Itsys 12.3.2008, 13:37 |
В Windows не работает вот. |
| Автор: amg 12.3.2008, 13:58 | ||
Тогда можно вместо use locale; самому определить "небукву", например
|
| Автор: shamber 12.3.2008, 14:56 | ||
Itsys, не совсем правы.
работает .... |
| Автор: shamber 12.3.2008, 15:13 |
| ... косяк инета |
| Автор: Itsys 12.3.2008, 15:59 | ||
Не могу сказать однозначно, но помоему так я пробовал ругается на setlocale(LC_CTYPE, "ru_RU.CP1251"), говорит, что нет такой локали и все тут. PS Хотя могу ошибаться, т.к. это было давно.. в самом начале моей карьеры... с тех пор больше не пробовал - пользуюсь способом указанным amg. |
| Автор: shamber 12.3.2008, 16:02 |
| Itsys, я пробовал, работает |
| Автор: t00t00 18.3.2008, 01:33 | ||||||
помоему так выглядит намного легче
|
| Автор: amg 18.3.2008, 08:11 |
| t00t00, Ваш код посчитает только количество букв (а надо и слов тоже), причем только английских (надо, очевидно, и русских) и только в 1-й строке файла (надо - во всем). Если все эти нюансы учесть, то, думаю, уже не будет выглядеть намного легче. |