首页 新闻 会员 周边

正则表达式 去掉两边字符保留中间的

0
悬赏园豆:5 [已关闭问题] 关闭于 2012-07-25 16:15
……
<Address>
<![CDATA[ 这里是任意字符 ]]>
  </Address>
……
如何用正则表达式把中间的“这里是任意字符”两边的<![CDATA[ 和 ]]>去掉,变成如下:
……
<Address>
  这里是任意字符
  </Address>
……
Alec-Yin的主页 Alec-Yin | 初学一级 | 园豆:188
提问于:2012-07-23 17:31
< >
分享
所有回答(2)
0

Replace("<![CDATA[","").Replace("]]>","")不行吗?

artwl | 园豆:16736 (专家六级) | 2012-07-23 18:01

这种方法有可能会把一些有用的]]>标记也替换掉

支持(0) 反对(0) Alec-Yin | 园豆:188 (初学一级) | 2012-07-23 18:08

@清明雨上: 用正则重写新了一个:

var testStr = @"<Address>
    <![CDATA[ 这里是任意字符 ]]>
</Address>";
Regex rgx = new Regex(@"<!\[CDATA\[(?<content>.*?)\]\]>");
var result = rgx.Replace(testStr, delegate(Match m)
{
    return m.Groups["content"].Value;
});
Console.WriteLine(result);
支持(0) 反对(0) artwl | 园豆:16736 (专家六级) | 2012-07-23 18:26
0

我目前用的是截取的方式进行处理的。

jerry-Tom | 园豆:4077 (老鸟四级) | 2012-07-24 10:21
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册