我需要从 html 代码中提取字符串。我有一个正则表达式。打开文件后(或发出“获取”请求后),我需要找到模式。
所以,我有一个 html 代码,我想找到这样的字符串:
<input type="hidden" name="qid" ... anything is possible bla="blabla" ... value="8">
我想找到字符串qid,然后在它后面找到字符串value="435345"并提取 435345。
现在我只是想找到这个字符串(我已经完成了),然后我将进行替换(我会这样做),但是这段代码找不到模式。怎么了?
open(URLS_OUT, $foundResults);
@lines = <URLS_OUT>;
$content = join('', @lines);
$content =~ /<qid\"\s*value=[^>][0-9]+/;
print 'Yes'.$1.'\n';
close(URLS_OUT);
或此代码:
my $content = $response->content();
while ($content =~ /<qid\"\s*value=[^>][0-9]+/g)
{
print 'Yes'.$1.'\n';
}
我检查了文件不为空并且正确打开(我已经打印出来了),但是我的程序找不到模式。怎么了?我已经使用这个引用(和其他一些)检查了正则表达式:http: //gskinner.com/RegExr/ 它表明正则表达式是正确的并且找到了我需要的。