XianRenShan 2017-08-09 03:39 采纳率: 66.7%
浏览 3082
已采纳

c#正则表达式中的匹配与替换

string str=“17春六年级数学班(1次),17年夏季创意美术班(5次),17暑假写作(8次)”
把匹配括号里的单位"次"替换成别的内容
期望:str=“17春六年级数学班(1课时),17年夏季创意美术班(5课时),17暑假写作(8课时)”

  • 写回答

4条回答 默认 最新

  • 斯洛文尼亚旅游 2017-08-09 04:03
    关注

    正则提取括号中的内容在执行replace操作

    
        protected string Replace(System.Text.RegularExpressions.Match m)
        {
            return m.Groups[0].Value.Replace("次", "课时");
        }
    
    
    
        string str = "17春六年级数学班(1次),哈次,17年夏季创意美术班(5次),17暑假写作(8次),次级";
        str = System.Text.RegularExpressions.Regex.Replace(str, @"\([^)]+\)", Replace);
    

    如果你确认你括号内容都是 (数字次),直接替换

      string str = "17春六年级数学班(1次),哈次,17年夏季创意美术班(5次),17暑假写作(8次),次级";
     str=str.Replace("次)","课时)");
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?