实用正则表达式技术:HTML 相关应用与 URL 处理
1. 正则表达式匹配速度
在实际应用中,正则表达式的相对匹配速度依赖于工具和数据。例如,当目标文本非常长,但两端的空白字符较少时,某种中间方法可能比简单方法更快。不过,在实际编程里,通常使用如下代码去除文本两端的空白字符:
s/^\s+//;
s/\s+$//;
这是因为它几乎总是最快的,而且最容易理解。
2. HTML 相关示例
2.1 匹配 HTML 标签
常见的匹配 HTML 标签的正则表达式是 <[^>]+> ,例如在 Perl 中用于去除标签的代码:
$html =~ s/<[^>]+>//g;
然而,当标签内包含 > 时,这个正则表达式就会匹配错误,如 <input name=dir value=">"> 。实际上,HTML 允许在引号属性中出现原始的 < 和 > 。因此,需要更智能的正则表达式。
允许出现在 <...> 内的有引号序列和未加引号的“其他字符”(除 > 和引号外的所有字符)。HTML 支持单引号和双引号字符串,且不允许转义嵌入的
超级会员免费看
订阅专栏 解锁全文
10万+

被折叠的 条评论
为什么被折叠?



