Perl, считая слова со специальными символами - PullRequest
0 голосов
/ 20 августа 2010

Мне нужно подсчитать количество слов, включая специальные символы, такие как%, $ в определенном разделе XML-документа.

Мне нужно написать это в Perl-скрипте с использованием регулярных выражений.

У любого есть какие-либо предложения относительно того, где я могу начать искать дополнительную информацию, поскольку это мой первый Perl-скрипт.

  1. Мне нужна помощь в изоляции раздела и его данных.
  2. Вероятно, я буду использовать эти данные для передачи в подпрограмму для подсчета слов.
name
desc
address
line1
line2
line3

В приведенном выше примере мне нужно захватить адрес и все строки внутри него и построить строку, которая будет подсчитана.

Ответы [ 3 ]

4 голосов
/ 21 августа 2010

Aha. Вы хотите разобрать XML. Например, используйте анализатор XML XML :: Twig. Здесь это введение.

1 голос
/ 20 августа 2010

Попробуйте это ...

my $counter = 0;
$counter++ while ($string =~ m/[\S]+/g);

Это даст вам количество слов (группы символов между пробелами) и будет включать специальные символы, такие как%, $, если они отделены пробелами отдругие слова.

0 голосов
/ 20 августа 2010

Если у вас уже есть текст в строке, вы можете попробовать это:

my $counter = 0;
my @words = split " ", $string;
for my $word (@words) {
    $counter++ if ($word =~ /\W/);
}
print $counter;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...