为了账号安全,请及时绑定邮箱和手机立即绑定

匹配C样式多行注释的Regex

匹配C样式多行注释的Regex

C
开心每一天1111 2019-07-26 14:03:41
匹配C样式多行注释的Regex
查看完整描述

3 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

尝试使用此regex(仅单行注释):

String src ="How are things today /* this is comment */ and is your code /* this is another comment */ working?";String result=src.replaceAll("/\\*.*?\\*/","");//single line commentsSystem.out.println(result);

REGEX解释说:

匹配字符“/”字面上

匹配字符“*”字面意思

“.”匹配任何单个字符

“*?”在零和无限倍之间,尽可能少,根据需要扩展(懒惰)

匹配字符“*”字面意思

匹配字符“/”字面上

或者,下面是对单行和多行注释的regex,方法是添加(?):

//note the added \n which wont work with previous regexString src ="How are things today /* this\n is comment */ and is your code /* this is another comment */ working?";String result=src.replaceAll("(?s)/\\*.*?\\*/","");System.out.println(result);

参考资料:




查看完整回答
反对 回复 2019-07-27
?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞


试试这个:

(//[^\n]*$|/(?!\\)\*[\s\S]*?\*(?!\\)/)

如果要排除“中包含的部分,请使用:

(\"[^\"]*\"(?!\\))|(//[^\n]*$|/(?!\\)\*[\s\S]*?\*(?!\\)/)

第一个捕获组标识所有“部分”,第二个捕获组给出注释(包括单行和多行)。

将正则表达式复制到雷杰斯101如果你想要解释




查看完整回答
反对 回复 2019-07-27
  • 3 回答
  • 0 关注
  • 438 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信