我需要计算一些单词的数量,包括XML文档的特定部分中的%,$等特殊字符。
我需要使用正则表达式在Perl脚本中编写它。
任何人都有任何建议,我可以从哪里开始寻找更多信息,因为这是我的第一个perl脚本。
name desc address line1 line2 line3
在上面的示例中,我需要捕获地址及其中的所有行,并构建一个将被计算的字符串。
答案 0 :(得分:4)
啊哈。您想要解析XML。例如,使用XML解析器 XML ::嫩枝。 Here 是一个介绍。
答案 1 :(得分:1)
试试这个......
my $counter = 0;
$counter++ while ($string =~ m/[\S]+/g);
这将为您提供单词(空格之间的字符组)的计数,并且如果它们被空格与其他单词分隔,则将包含特殊字符,例如%,$。
答案 2 :(得分:-1)
如果你已经在字符串中提供了文本,你可以试试这个:
my $counter = 0;
my @words = split " ", $string;
for my $word (@words) {
$counter++ if ($word =~ /\W/);
}
print $counter;