给关键词添加链接时,刚好超链接也有含有关键词时

本文介绍了一种使用正则表达式替换文本中特定关键词的方法,并通过实例展示了如何跳过已有的超链接进行替换,确保不会修改原有的HTML标签。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    private string ReplaceKeyWord(string content)
    
{
        
string keyword = @"<(\ba\b)[^>]*>[\w\W]*?</\1 *>|AA|BBB|CCC";
        
return Regex.Replace(content, keyword, ReplaceString, RegexOptions.IgnoreCase);

    }

    
private string ReplaceString(Match m)
    
{
        
if (Regex.IsMatch(m.ToString(), @"<(\ba\b)[^>]*>[\w\W]*?</\1 *>", RegexOptions.IgnoreCase))
        
{
            
return m.ToString();
        }

        
else
        
{
            
return "<a href=\"aaa.aspx?keyword=" + m.ToString() + "\">" + m.ToString + "</a>";
        }

    }

<(\ba\b)[^>]*>[\w\W]*?</\1 *>为 <a href="...">XXXXX</a> 的正则表达式
在关键词正则表达式前 加一个超链接正则表达式,在替换的时候,如果是超链接就不替换

转载于:https://www.cnblogs.com/fanfajin/archive/2007/08/20/863059.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值