[英]Groovy remove multiline comment
如何使用groovy删除多行注释?
/* Use groovy replaceAll regex to
remove this comment */
我将上述文本从文件读入文件对象,然后将其转换为字符串。 如果注释只占一行,我可以使用replaceAll方法将其删除,如下所示:
def file = new File('myfile')
def fileString = file.getText()
println fileString.replaceAll('/\\* .* \\*/','')
我尝试使用(?m)标志,但是无法识别它的模式。 我尝试了以下语句,但它们均与我的模式不匹配。
fileString.replaceAll('(?m)/\\* (.*) \\*/' ,'') #multiline switch
fileString.replaceAll('(/\\*)(.|\n\r)*(\\*/)' ,'') #match all .* (include \n\r)
我考虑过使用DotAll,末尾的(\\ s)和$ {}。 但是,我不确定如何将其有效地混合到正则表达式中。 任何帮助都会受到欢迎。 谢谢。
试试这个表达式:
'(?s)/\\*.*?\\*/'
(?m)
没有.
匹配新行, (?s)
做到了。
做类似的事情
/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/
为正则表达式部分工作?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.