C#自动给文章关键字加链接实现代码
主要做的是,文章中的关键字标签加上链接,网上也有很多解决办法,自己整理以便后续在用。
效果如图:
下面是代码:
复制代码 代码如下:
/// <summary>
/// 内联
/// </summary>
/// <param name="content"></param>
/// <returns></returns>
public string ReplaceTextTag(string content)
{
A a = new A();
string result = "";
if (!string.IsNullOrEmpty(content))
{
//标签
List<Tag> listAll = a .GetTag(); 获取标签也就是所谓的关键字
string str1 = content;
result = keyAddUrl(str1, listAll);
}
return result;
}
/// <summary>
/// 加title,加链接
/// </summary>
/// <param name="src"></param>
/// <param name="keys"></param>
/// <returns></returns>
private string keyAddUrl(string src, List<TopicTag> keys)
{
Regex reg = new Regex(@"(?i)(?:^|(?<!<a\b(?>[^<>]*))>)(?>[^<>]*)(?:<|$)");
int length = 0;
string temp = string.Empty;
return reg.Replace(src, delegate(Match m)
{
temp = m.Value;
length = temp.Length;
for (int i = keys.Count - 1; i >= 0; i--)
{
temp = Regex.Replace(temp, @"(?is)^((?:(?:(?!" + Regex.Escape(keys[i].Label) + @"|</?a\b).)*<a\b(?:(?!</?a\b).)*</a>)*(?:(?!" + Regex.Escape(keys[i].Label) + @"|</?a\b).)*)(?<tag>" + Regex.Escape(keys[i].Label) + @")",
@"$1<a href=""http://cn.greatexportimport.com/topic-" + keys[i].Id + @""" target=""_blank"" title=""${tag}"">${tag}</a>");
if (length != temp.Length)
{
keys.Remove(keys[i]);
}
length = temp.Length;
}
return temp;
});
}
在页面调用此方法即可:<p><%=Tag.ReplaceTextTag(Tag.Contents)%></p><br />
上一篇 : C#中按指定质量保存图片的实例代码
下一篇 : java从mysql导出数据的具体实例
-
SEO外包最佳选择国内专业的白帽SEO机构,熟知搜索算法,各行业企业站优化策略!
SEO公司
-
可定制SEO优化套餐基于整站优化与品牌搜索展现,定制个性化营销推广方案!
SEO套餐
-
SEO入门教程多年积累SEO实战案例,从新手到专家,从入门到精通,海量的SEO学习资料!
SEO教程
-
SEO项目资源高质量SEO项目资源,稀缺性外链,优质文案代写,老域名提权,云主机相关配置折扣!
SEO资源
-
SEO快速建站快速搭建符合搜索引擎友好的企业网站,协助备案,域名选择,服务器配置等相关服务!
SEO建站
-
快速搜索引擎优化建议没有任何SEO机构,可以承诺搜索引擎排名的具体位置,如果有,那么请您多注意!专业的SEO机构,一般情况下只能确保目标关键词进入到首页或者前几页,如果您有相关问题,欢迎咨询!