C# 使链接不可与正则表达式链接,除非来自特定域
我想写一个正则表达式,它将使链接不可链接-只需删除href html标记并将链接url保留为文本。因此,如果只留下url,它将忽略锚文本 但是,如果链接不是来自某个域,那么这个正则表达式应该会使链接不可用。我想把这个用于我的私人信息系统 所以正则表达式将执行以下操作 如果链接不是以特定域为目标,请创建链接url文本。忽略给定的锚文本 asp.net 4.0,C#4.0 范例C# 使链接不可与正则表达式链接,除非来自特定域,c#,asp.net,regex,hyperlink,C#,Asp.net,Regex,Hyperlink,我想写一个正则表达式,它将使链接不可链接-只需删除href html标记并将链接url保留为文本。因此,如果只留下url,它将忽略锚文本 但是,如果链接不是来自某个域,那么这个正则表达式应该会使链接不可用。我想把这个用于我的私人信息系统 所以正则表达式将执行以下操作 如果链接不是以特定域为目标,请创建链接url文本。忽略给定的锚文本 asp.net 4.0,C#4.0 范例 <a href="http://www.monstermmorpg.com/" target="_blank">
<a href="http://www.monstermmorpg.com/" target="_blank">My domain</a>
这将被解析为
http://www.monstermmorpg.com/
它将是文本类似的东西在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
属性
与所有与正则表达式相关的查询一样,请发布要测试的样本数据以及预期结果。不要使用正则表达式解析HTML!事实上,它将删除所有链接,除非给出一个。谢谢评论。我解决了htmlagilitypack:)的问题,但jquery也可以工作。@MonsterMMORPG我的“更新”显然有一个bug。JSFIDLE有时速度太慢,以至于您认为它运行了您的脚本,并且它工作了,但实际上它没有。我最初的例子确实很好用。我用几个超链接更新了链接,甚至在同一个域上更新了不同的路径,效果很好。