日期:2014-05-19  浏览次数:20458 次

字符串替换

如:

string   str= "-AAA-你是谁啊-BBB- ";

string   str= "-AAA-sdfasfsadf你是sdfsadfsaf谁sdfsadfsaf啊-BBB- ";

能不能用一个方法不管   "-AAA- "   与     "-BBB- "     之间是什么内容   只要是   "-AAA- "   与     "-BBB- "   之间的内容都更新成123

怎么实现?

------解决方案--------------------
Regex.Replace(strIn, @ "-AAA-\w\.+-BBB- ", "-AAA-123-BBB- ";);
------解决方案--------------------
学习~~
------解决方案--------------------
试下

using System.Text.RegularExpressions;

string yourStr = .............;
string resultStr = Regex.Replace(yourStr, @ "(? <=-AAA-)[\s\S]*?(?=-BBB-) ", "123 ");
------解决方案--------------------
Regex.Replace(yourStr, @ "-AAA-(.*?)-BBB- ", "123 ");
------解决方案--------------------
以上方法可以吗
------解决方案--------------------
Regex.Replace(strIn, @ "-AAA-\w+-BBB- ", "-AAA-123-BBB- ");
------解决方案--------------------
感觉你这个需求很矛盾

你都知道最终需要的是什么内容,何必在转换

最终不都是-AAA-123-BBB-? 如果123那一部分是一个变量可能才有意义
------解决方案--------------------
^(? <=-AAA[^-]*?-)[\s\S]*?(?=-BBB-)$