查找不包含“javascript:”的href属性值

时间:2009-12-06 15:39:00

标签: c# asp.net html regex

我有一个RegEx,可以很好地找到URL中的href:

<[aA][^>]*? href=[\"'](?<url>[^\"]+?)[\"'][^>]*?>

但是,我希望它找不到包含文本'havascript:'的任何href。

原因是我有时需要修改href,有时则不需要。如果href中有'javascript:'文本,我希望正则表达式找不到它。

(ASP.NET,C#)

2 个答案:

答案 0 :(得分:2)

我真的不建议使用正则表达式,因为HTML不是常规的,并且没有结束边缘情况的结束。如果可能的话,请使用HTML解析器。我想你会发现它不那么悲伤了。

答案 1 :(得分:0)

单词javascript可以用其他方式编写。请看ha.ckers.org文章。 简单地排除javascript字点不能为您提供安全保障。