【发布时间】:2013-05-22 06:08:43
【问题描述】:
我知道 HTML:Parser 是一个东西,通过阅读,我意识到尝试使用正则表达式解析 html 通常是一种次优的做事方式,但是对于 Perl 类,我目前正在尝试使用常规表达式(希望只是一个匹配)来识别和存储保存的 html 文档中的句子。最终,我希望能够计算出句子的数量、单词/句子以及页面上单词的平均长度。
目前,我只是尝试隔离“>”之后和“。”之前的内容,只是为了看看它隔离了什么,但我无法让代码运行,即使在操作常规时表达。所以我不确定问题是在正则表达式中,还是在其他地方,或者两者兼而有之。任何帮助将不胜感激!
#!/usr/bin/perl
#new
use CGI qw(:standard);
print header;
open FILE, "< sample.html ";
$html = join('', <FILE>);
close FILE;
print "<pre>";
###Main Program###
&sentences;
###sentence identifier sub###
sub sentences {
@sentences;
while ($html =~ />[^<]\. /gis) {
push @sentences, $1;
}
#for debugging, comment out when running
print join("\n",@sentences);
}
print "</pre>";
【问题讨论】:
-
您能说说您遇到了什么错误吗?无法运行代码是什么意思?
-
我希望我能,我收到的唯一错误是服务器错误 (500),服务器为我提供了从缺少
语句到不正确语法到缺少括号的所有内容
-
你仍然从不使用 Regex 解析 HTML。