问题描述
代码如下:stringcontent="你是个/::\)坏蛋/::~啊"要返回为:“你是个笑坏蛋扯”下面这段代码返回的有问题!aa要怎么赋值才正确啊?privatestaticstringIsEmoticons(stringcontent){stringqqfaceregex="/::\)|/::~";stringaa=null;if(Regex.IsMatch(content,qqfaceregex)){foreach(MatchiteminRegex.Matches(content,qqfaceregex)){aa=Regex.Replace(content,qqfaceregex,GetInfo(item.Value));}returnaa;}else{returncontent;}}privatestaticstringGetInfo(stringinfo){if(info=="/::)"){return"笑";}elseif(info=="/::~"){return"扯";}else{return"aaa";}}
解决方案
解决方案二:
没看懂,跟aa有什么关系,aa不就是替换后返回的字符串吗
解决方案三:
引用1楼bdmh的回复:
没看懂,跟aa有什么关系,aa不就是替换后返回的字符串吗
对替换完了应该返回的是“你是个笑坏蛋扯”这样的但是这个方法返回的是“你是个扯坏蛋扯”把第一个替换给覆盖了!
解决方案四:
什么逻辑啊,就直接写正则不行吗
解决方案五:
引用3楼zzx112358的回复:
什么逻辑啊,就直接写正则不行吗
求教。。
解决方案六:
/::\)把这个先replace替换成笑,在用正则过滤是否符合你需求?
时间: 2024-10-04 17:57:46