匹配除.js或.css href之外的所有href

时间:2013-11-12 11:12:30

标签: regex

我正在尝试匹配页面上的所有链接,但我不想捕获css或js文件

我能想到的最好的就是这个

^href=".*[^\.css | ^\.js]"$

但它也匹配一些奇怪的文本,比如这个:

href="http://fonts.googleapis.com/css?family=Droid+Serif" type="text/css"><link rel="stylesheet" 

任何想法?我一直在尝试和谷歌搜索我的问题,但到目前为止没有什么

2 个答案:

答案 0 :(得分:0)

您需要使用否定前瞻:

href="[^.]+(?!(?:css|js)).*"

但是,与正则表达式相比,可能有更好的方法来删除像DOM解析器这样的HTML页面。

答案 1 :(得分:0)

此:

href="http://fonts.googleapis.com/css?family=Droid+Serif" type="text/css"><link rel="stylesheet" 

中没有.​​css,但只有css(没有点)。这不是它找到它的原因吗?