2017-04-18 84 views
0

我正在创建一个正则表达式。这是我的测试数据集:缩小正则表达式结果

<a href="test.html">test1</a> 
<a href="test.pdf">test2</a> 
<a href="test.html">test1</a> 
<a href="test.html">test1</a><a href="testtime.pdf">test2</a> 

我试图从捕捉到的“href =”到“PDF”,但下面的正则表达式:

href=.*?\.pdf 

将捕获正确的数据,如果它是孤立以一条线,但它也将匹配来自最后一行如下:

href="test.html">test1</a><a href="testtime.pdf 

我只是从去年的“href”到“.PDF”想,我不想在第一的‘href’上该线或任何其中的东西和第二个“hre F”。是否有可能修改正则表达式来正确匹配?

谢谢。

+0

只有当它是PDF格式时,您才需要上一个链接文件的名称? – Slime

+0

正则表达式的JavaScript? – aahhaa

+0

请注意,用正则表达式解析HTML是充满危险的。有关原因的示例,请参阅http://htmlparsing.com/regexes.html。 –

回答

0

首先,使用捕获组,它们允许你匹配整个单词,但只提取它的一部分,例如href=\"(.*\.pdf)\"应该允许你匹配href="xxxx.pdf"字符串,但只提取xxxx.pdf部分。

你如何做到这一点取决于你使用什么技术来获取正则表达式。不知何故,我怀疑这是HTML。