我试图找到使用在Python 3正则表达式在PHP源代码中的注释块的PHP评论都是这种格式:Python 3的正则表达式查找多行注释
/**
* This is a very short block comment
*/
现在,我想出了以下正则表达式:
'/\*\*[.]+?\*/'
我的身影,与DOTALL -in组合升旗应该这样做,但是没有。它没有找到任何东西。奇怪的是,当我删除尾随斜杠,像这样:
'/\*\*[.]+?\*'
然后找到以下字符串:
/**\n\t*
我不知道为什么正则表达式不能找到一个星号后面斜线......我检查了我正在搜索的文件,仔细检查我在评论中没有输入错误(我没有)。 另外斜杠在正则表达式中并不是特殊字符,所以我不必逃避它。 (我试过了,但没有帮助。)
谁能告诉我我的正则表达式有什么问题吗? :)
顺便说一下,我也遇到了this!有人试图在Java中做同样的事情。最终获胜的答案以我现在做的相同的方式完成了他的正则表达式,所以我很无知:(这可能是Python正则表达式中的错误还是我完全缺少某些东西?
任何帮助非常感谢!:D
为什么你在你的模式中有'[。]'?与之相反+ – arunkumar
那么,因为起初我没有使用[。\ s] DOTALL标志。在我删除了\ s并添加了DOTALL标志后,方括号仍然留在那里。但是,我没有删除他们,他们似乎导致了问题。如果有人关心解释吗?就我的正则表达式知识而言'。+'应该与[。] +相同的东西匹配吗? – lunanoko