weixin_38795512
weixin_38795512
2018-08-11 08:05
采纳率: 100%
浏览 1.1k

c# 正则表达式 表达式

红包(¥2000.00(红包零钱ID:1115))
积分(100积分)
2次参与机会(你好)
购物券(测试过期提醒001(¥10,满12.00元使用))
礼品(▁▂▃▄▅▆▇█████▇▆▅▄▃▂▁)
怎么用正则表达式分别替换()括号里面的内容,付上正则表达式 谢谢

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • caozhy
    已采纳
    你要替换成什么没有说
    
    using System.Text.RegularExpressions;
    
    string input = "红包(¥2000.00(红包零钱ID:1115)) ";
    input = input.Replace("(","(");
    input = input.Replace(")", ")"); //将括号统一换成半角的
    string pattern = @"\([^\(\)]*(((?<Open>\()[^\(\)]*)+((?<-Open>\))[^\(\)]*)+)*(?(Open)(?!))\)";  //使用递归平衡组匹配嵌套的括号
    string replacement = " "; //替换成什么写在这里
    Regex rgx = new Regex(pattern);
    string result = rgx.Replace(input, replacement);
    
    点赞 评论
  • caozhy

    在线编译测试通过

    https://ideone.com/bCkeLD

    点赞 评论

相关推荐