日期:2014-05-16  浏览次数:20718 次

求C#正则表达式高手解救[找开头与结尾]
有字符串如下:
string s ="55454554 SUBROUTINE CAP_DISCHARGE();END DYNAMIC : ……  END SUBROUTINE CAP_DISCHARGE;字符串之间的为电容放电程序暂不采集,先过滤掉这部分内容。";

SUBROUTINE CAP_DISCHARGE(); 到 END SUBROUTINE CAP_DISCHARGE; 的内容去掉

我想要的结果为:   "55454554字符串之间的为电容放电程序暂不采集,先过滤掉这部分内容。";

我这样写 ,不知道为什么不能配配到

String pattern = @"SUBROUTINE_DISCHARGE_POWER();.*?END SUBROUTINE DISCHARGE_POWER;"


--------------------------------head.*?end------------------------------
------解决方案--------------------
你的正则与上面的开始结束明显不匹配
string s = "55454554 SUBROUTINE CAP_DISCHARGE();END DYNAMIC : ……  END SUBROUTINE CAP_DISCHARGE;字符串之间的为电容放电程序暂不采集,先过滤掉这部分内容。";
            s = Regex.Replace(s, @"(?i)SUBROUTINE CAP_DISCHARGE\(\);.*?END SUBROUTINE CAP_DISCHARGE;", "");