c# – 使用find / replace和regex将字符串中的URL替换为关键字
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – 使用find / replace和regex将字符串中的URL替换为关键字,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1936字,纯文字阅读大概需要3分钟。
内容图文
![c# – 使用find / replace和regex将字符串中的URL替换为关键字](/upload/InfoBanner/zyjiaocheng/783/27ace79c02b94a9aba598f1393db3097.jpg)
我有一些关键字(单个单词或几个单词)列表,我想用一些URL替换它们.
喜欢:
>伦敦将被替换为< a
HREF = “HTTP://www.mysite/london-events/london” >伦敦< / A>
>伦敦的足球赛事< a
HREF = “HTTP://www.mysite/footbal-events/london” >
伦敦的足球赛事< / a>
>伦敦足球赛事< a
HREF = “HTTP://www.mysite/footbal-events/london” >
伦敦足球赛事< / a>
>足球赛事伦敦与< a
HREF = “HTTP://www.mysite/footbal-events/london” >
足球赛事伦敦< / a>
>伦敦的派对网站< a
HREF = “HTTP://www.mysite/party-sites/london” >
伦敦的派对网站< / a>
>伦敦派对网站< a
HREF = “HTTP://www.mysite/party-sites/london” >
伦敦派对网站< / a>
我将上面的键/值放在字典中,将关键字放在键中,将URL放在值中并替换为
内容如下:
London is a great city and have
football events in london but party
sites in london are also good. London
football events are great along with
London party sites. Enjoy London!
替换键/值的代码:
private static string ParsedContents(some arguments list here...)
{
Dictionary<string, string> keyWords = GetKeywordsAndEntityWithURL(some arguments list here...);
StringBuilder parsedContents = new StringBuilder(contents);
foreach (var keyWord in keyWords)
{
string replacedString = Regex.Replace(parsedContents.ToString(), "\\b" + keyWord.Key + "\\b", keyWord.Value, RegexOptions.IgnoreCase);
parsedContents.Remove(0, parsedContents.Length);
parsedContents.Append(replacedString);
}
// retrun parsed contents as string.
return parsedContents.ToString();
}
当我运行我的代码时,仅将’London’替换为’< a href =“http://www.mysite/london-events/london”> London< / a>‘而所有其他只是保持不变,但如果我从关键字中删除’伦敦’它工作正常.
你能帮我解决一下我怎么能匹配整个字符串.
要替换的内容和网址是假的:
谢谢
解决方法:
如果您先用URL替换所有较长的字符串,而不是在URL中设置“伦敦”,您可以设置另一个单词,例如“Lxondon”,该怎么办?将包含London的所有字符串替换为相应的URL后,您也可以用其URI替换London.最后,您将在所有文本中将“Lxondon”替换为“伦敦”.
这不是一个非常好的方法,但我认为它会工作.
内容总结
以上是互联网集市为您收集整理的c# – 使用find / replace和regex将字符串中的URL替换为关键字全部内容,希望文章能够帮你解决c# – 使用find / replace和regex将字符串中的URL替换为关键字所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。