寻找正则表达式来擦除href文本

时间:2010-12-27 18:23:49

标签: regex

如果我有一堆像这样的网址:

<li><a href="http://www.xyz.com/sometext/someothertext/123/sometext/">Xyz 123</a></li>  
<li><a href="http://www.xyz.com/345/sometext/someothertext/">Xyz 345</a></li>

正则表达式会删除href中的url以便它们成为:

<li><a href="">Xyz 123</a></li> 
<li><a href="">Xyz 345</a></li>

4 个答案:

答案 0 :(得分:2)

以下应该做你喜欢的事:

/href=\"([^\"]*)\"/

基本匹配href="<any text but a '"'>"

答案 1 :(得分:2)

搜索<a href="[^"]*"并替换为<a href=""

如果您添加有关您正在使用的语言的更多详细信息,我可以更具体。还要注意,在处理HTML时,正则表达式通常不是首选工具。

答案 2 :(得分:2)

首先,不使用正则表达式来解析HTML - 为什么?看看herehere

使用XML阅读器/ XML文档处理引擎处理HTML。然后使用XPath查找符合条件的节点,并更改DOM中的href属性。

注意:对于格式不正确的HTML,需要更通用的HTML(SGML)解析器。

答案 3 :(得分:0)

我部分同意其他人,但更完整的版本将是

/(<a[^>]+href\s*=\s*\")(.*?)("[^>]*>)/$1$3/gi