各位老师好:
1.问题描述: 请教一个正则替换的问题<a href=/"/">世界和平 </a>。需求是待正则校验的文章中,如果含有超链接的文字不处理,有符合要求的文字,添加超链接。
2.目前进度:可以过滤掉含有超链接的文字,例如: string strWaitMatchData = "<a href="ab">Comfortpro 悦服者</a>在每一个时间和空间中8H98,下一个思维<a href=\"worldPeace12\">8H98</a>";中,Comfortpro 悦服者 不在处理,
3.遇到问题 : 例如:在每一个时间和空间中8H98,下一个思维<a href=\"worldPeace12\">8H98</a>";第一次出现的8H98关键字没有处理。
4.代码如下:
1 string[] strWaitArr = { "Cosy_Nest 佳宝巢 ", "Comfortpro 悦服者", "8H98"};/*匹配的品牌名称*/ 2 string strWaitMatchData = "Comfortpro 悦服者在每一个时间和空间中8H98,下一个思维<a href=\"worldPeace12\">8H98</a>"; 3 4 for (int i = 0; i < strWaitArr.Length; i++) 5 { 6 if (strWaitMatchData.IndexOf(strWaitArr[i].Trim())>-1) 7 { 8 string strMatchBrandRegularBoolN = "(?is)(?<URL><a[^>]*?>" + strWaitArr[i].Trim().ToString()+ "</a>)"; /*生成动态的正则字符串*/ 9 if (!Regex.Match(strWaitMatchData,strMatchBrandRegularBoolN).Success)/*不含有关键词的替换*/ 10 { 11 strWaitMatchData = strWaitMatchData.Replace(strWaitArr[i].Trim().ToString().Trim(), "<a href=\"WorldPeace\">" + strWaitArr[i].Trim().ToString().Trim() + "</a>"); 12 } 13 }//end if 14 }// the end 15 16 Console.WriteLine(strWaitMatchData);/*<a href="WorldPeace">Comfortpro 悦服者</a>在每一个时间和空间中8H98,下一个思维<a href="worldPeace12">8H98</a>*/ 17 Console.Read();
5.如有相同帖子的思路,希望朋友们帮忙,谢谢了。
问题叙述太过混乱,理不清
谢谢提醒,
我的表述确实不清晰,这个问题暂时搁置了,还是谢谢您:)