2017-08-01 349 views
0


我想匹配多行注释与正则表达式。注释类型为:如何匹配多行注释与正则表达式

/* 
    This is a comment. 
*/ 

我试试这个代码:

\/\*(.*?)\*\/ 

问题图像here
谢谢。

+0

什么工具或语言是您使用? –

+0

我正在为** Atom文本编辑器**制作语法包。这是语言** CoffeeScript **。 –

+1

我对Atom正则表达式不熟悉,但问题似乎是您的正则表达式不能在多行模式下运行。如果你能弄清楚如何制作正则表达式多行,它应该可以工作。 –

回答

0

根据您正在使用的正则表达式引擎,在针对多行字符串进行匹配时适用不同的规则。

假设您使用的是PCRE(使用PHP),此模式不匹配,因为默认情况下PCRE中的.与换行符不匹配。使用this pattern匹配换行符,太:

\/\*\s?(.*)\s?\*\/ 

use your original pattern并且可以指定/s(单线)模式,但在这种情况下,引导和拖尾换行符将被捕获为好。

+0

它不起作用。 –

+0

当我点击链接时,它适用于我... – marekful

+0

在链接确实有效。但在Atom文本编辑器中不起作用。 –

0

regex,应找出所有评论:

\/\*\n((.*?)\n)+\*\/ 
+0

它不起作用。 –

0

问题解决了!
我使用此代码:

{ 
     'begin': '\\/\\*' 
     'end': '\\*\\/' 
     'name': 'comment.block.documention.mylanguage' 
},