【发布时间】:2011-06-04 07:08:58
【问题描述】:
我正在尝试打开一个文件,匹配特定的行,然后在该行周围环绕 HTML 标记。看起来非常简单,但显然我遗漏了一些东西并且没有正确理解 Perl 匹配的模式变量。
我将这条线与此匹配:
$line =~ m/(Number of items:.*)/i;
这会将整行放入 $1。然后我尝试像这样打印出我的新行:
print "<p>" . $1 . "<\/p>;
我希望它打印这个:
<p>Number of items: 22</p>
但是,我实际上得到了这个:
</p>umber of items: 22
我尝试了各种变体 - 将每个位打印在单独的行上,将 $1 设置为新变量,使用 $+ 和 $& 等等,我总是得到相同的结果。
我错过了什么?
【问题讨论】:
-
你所描述的在我的机器上工作。您可以发布您正在运行的实际代码吗?
-
请包含您使用的完整(但最少)代码。
标签: regex perl backreference