问题描述
publicstaticstringgetContentBysystenkeyword(objectobj){stringcontent="";if(obj==null||obj.ToString().Trim()==""){return"";}content=obj.ToString();List<MSystemKeyword>list=HttpContext.Current.Cache["SystemKeyword"]asList<MSystemKeyword>;if(list==null){BSystemKeywordsyskeywordbll=newBSystemKeyword();syskeywordbll.path=HttpContext.Current.Server.MapPath("/App_Data/SystemKeywords.xml");list=syskeywordbll.getList("Enabled=True");if(list==null)list=newList<MSystemKeyword>();System.Web.Caching.CacheDependencydep=newSystem.Web.Caching.CacheDependency(HttpContext.Current.Server.MapPath("/App_Data/SystemKeywords.xml"));HttpContext.Current.Cache.Insert("SystemKeyword",list,dep);}foreach(MSystemKeywordminlist){stringtarget="target="_blank"";content=System.Text.RegularExpressions.Regex.Replace(content,"(?<=[^>]*)("+m.LookExpression+")(?![^<]*</a>)","<atitle=""+m.Title+"""+"alt=""+m.Alt+"""+target+"href=""+m.Link+"">$1</a>");}returncontent;}
如果一个关键字:中国一个单页面出现中国的会加一个链接。如果图片的Title或alt出现中国,那么图片就坏掉了有高手遇到过这问题吗?求助
解决方案
解决方案二:
把那些不需要替换的情况给筛选出来或者把需要替换的给筛选出来你需要把这些东西给归类了,然后让一大牛给写一正则就搞定了
解决方案三:
正则匹配
解决方案四:
引用楼主的回复:
C#codepublicstaticstringgetContentBysystenkeyword(objectobj){stringcontent="";if(obj==null||obj.ToString().Trim()==""){……
关键是找不到这个大牛呀
解决方案五:
引用2楼的回复:
正则匹配
老兄,有吗
解决方案六:
有高手吗?
解决方案七:
引用3楼的回复:
关键是找不到这个大牛呀
首先你需要把你的需求给叙述明白了哪些“中国”是需要替换的哪些中国是不需要替换的你总得把这两种情况给叙述明白了人也好写正则哇
解决方案八:
引用6楼的回复:
引用3楼的回复:关键是找不到这个大牛呀首先你需要把你的需求给叙述明白了哪些“中国”是需要替换的哪些中国是不需要替换的你总得把这两种情况给叙述明白了人也好写正则哇
碰到<img>的不要求输出判断关键字。屏蔽<img>
解决方案九:
求关注,求大牛,求解答
解决方案十:
求正则高手,在线wating.....
解决方案十一:
看看这个帖子里的正则符合你的要求不,俺不会正则
解决方案十二:
有么有高手啊,我都等待一个星期了,高手帮忙解决下啊
解决方案十三:
真没人能回答上来了呀?
解决方案十四:
哎,败了。
解决方案十五:
高手请进
解决方案:
假设你遇到了一个语法分析之后才能翻译出来结果的需求,却去妄想用什么正则来“解决”,这不就是太幼稚了嘛。正则只能干最简单最低级的工作,它只是分析基本单词用来作为语法分析程序的输入,而不是搞高级的翻译工作的!
解决方案:
你应该去找一个html语法分析程序,这个程序给出html语法结构树。
解决方案:
引用15楼的回复:
假设你遇到了一个语法分析之后才能翻译出来结果的需求,却去妄想用什么正则来“解决”,这不就是太幼稚了嘛。正则只能干最简单最低级的工作,它只是分析基本单词用来作为语法分析程序的输入,而不是搞高级的翻译工作的!
那你给个例子我看下