当前位置: 代码迷 >> ASP.NET >> 求一正则替换,多谢
  详细解决方案

求一正则替换,多谢

热度:4867   发布时间:2013-02-25 00:00:00.0
求一正则替换,谢谢
对应类似<Font Face='Arial' Color='-16777216' Size='9'>ddddddddddddd</Font>的字符串
其中Face和Color以及Size的顺序可能不一样,Face,Color,Size的值也可能都不一样
将其中的Face和Size替换为固定值face1和size1,Color值不变,即上面的字符串变为:

<Font Face='face1' Color='-16777216' Size='size1'>ddddddddddddd</Font>


谢谢

------解决方案--------------------------------------------------------
一次匹配似乎不行
------解决方案--------------------------------------------------------
得两次匹配,一次有难度
------解决方案--------------------------------------------------------
那要看你对需要替换的源字符串的要求了,如果说只要是<Font...>里的就替换,那么就这样

C# code
string test = "<Font Face='Arial' Size='9' Color='-16777216'>ddddddddddddd </Font>";string result = Regex.Replace(test, @"(?<=<Font[^>]*?Face=')[^']*(?=')", "face1", RegexOptions.IgnoreCase);result = Regex.Replace(result, @"(?<=<Font[^>]*?Size=')[^']*(?=')", "size1", RegexOptions.IgnoreCase);
  相关解决方案