chr*_*l89 3 regex scripting perl
我有一个简单的Perl正则表达式,我需要保存为变量.
如果我打印它:
print($html_data =~ m/<iframe id="pdfDocument" src=.(.*)pdf/g);
Run Code Online (Sandbox Code Playgroud)
它会打印我想要保存的内容,但在尝试使用以下内容进行保存时:
$link = $html_data =~ m/<iframe id="pdfDocument" src=.(.*)pdf/g;
Run Code Online (Sandbox Code Playgroud)
我得到一个'1'作为值$link.我认为这是因为它找到了'1'匹配.但是如何保存匹配的内容呢?
注意/ g获取所有匹配项.那些不可能被置于标量中.你需要一个数组.
my @links = $html_data =~ m/<iframe id="pdfDocument" src=.(.*)pdf/g;
Run Code Online (Sandbox Code Playgroud)
如果你只是想要第一场比赛:
my ($link) = $html_data =~ m/<iframe id="pdfDocument" src=.(.*)pdf/;
Run Code Online (Sandbox Code Playgroud)
注意parens(和缺乏现在无用/ g).你需要它们在列表上下文中调用m //.