“/ *”[^ * /] *“* /”
匹配第一个/ *然后它等待除* /之外的任何字符,然后当它获得* /它将匹配整个正则表达式时,但是对于此注释例如:
/ * bruno / braga * /
有人可以告诉我为什么/不匹配? 谢谢。
答案 0 :(得分:0)
为什么评论正则表达式错误?
由于正则表达式存在一些问题:
"
[^]
它会否定其中的所有内容,在你的例子中它会否定空间,因为你已将它包括在内。此外,角色{{ 1}}存在于输入字符串的中间,你可能只想在"结束评论"的上下文中跟随/
时才禁止它。 - *
。*/
是一个特殊字符,应该被转义。同样适用于*
/
之后正则表达式中存在的空格(输入字符串/*
不包含此类空格)/*bruno...
总结以上所有要点,正则表达式应更正为:
* /
请参阅DEMO
跟进路易斯的评论:如果您想在评论中添加\/\*[^\*]*\*\/
符号,可以使用:
*
参见 DEMO
答案 1 :(得分:0)
正确的正则表达式匹配评论(允许所有内容但只有*/
序列,您必须首先允许除*
之外的任何字符,或*
后跟除{/
以外的任何字符{1}},所以
/\*([^\*]|\*[^/])*\*/
应该做的工作(请记住,在演示正则表达式分隔符是/
所以它们是用反斜杠转义的,也许你必须这样做才能在代码中转义。