除非来自特定域,否则使用正则表达式使链接无法点击

时间:2011-10-09 23:45:10

标签: c# asp.net regex hyperlink

我想写一个正则表达式,它会使链接无法点击 - 只需删除href html标签并将链接网址保留为文本。因此,如果仅给出保留文件,它将忽略锚文本。

但是如果这些正则表达不是来自某个领域,那么这个正则表达式应该使链接不可用。我希望这能用于我的私人消息系统。

所以正则表达式会做以下

如果链接未定位到某个域,请创建链接url文本。忽略给定的锚文本。

asp.net 4.0,C#4.0

实施例

<a href="http://www.monstermmorpg.com/" target="_blank">My domain</a>

这将被解析为http://www.monstermmorpg.com/它将是文本

1 个答案:

答案 0 :(得分:2)

这样的东西适用于jQuery:

$(document).ready(removeLink("domain.com"));

function removeLink(domain)
{
   $('a').each(function(){
       if($(this).attr("href")!=null)
       if($(this).attr("href").indexOf(domain)>=0)
           $(this).removeAttr("href");
})
}

说明:

获取HTML中呈现的所有锚元素,并通过它们删除所有具有domain.com作为其一部分的超链接的href属性。

jsfiddle demo.