bea*_*rdc 5 regex textmate syntax-highlighting atom-editor
我正在尝试学习Atom的语法突出显示/语法规则,这些规则大量使用JS正则表达式,并且在python语法文件中遇到了一个不熟悉的模式.
该模式始于一个(?x)对我来说不熟悉的正则表达式.我在一个在线正则表达式测试器中查找它,似乎说它无效.我最初的想法是它代表了一个可选的左派,但我相信这些人应该在这里逃脱.
这只是Atom的coffeescript语法中的含义,还是我忽略了正则表达式的含义?
(这种模式也出现在我认为Atom来自的textmate语言文件中).
如果该正则表达式在 Python 中进行处理,它将使用“verbose”标志进行编译。
来自Pythonre文档:
(?aiLmsux)
(来自集合 'a'、'i'、'L'、'm'、's'、'u'、'x'中的一个或多个字母。)该组与空字符串匹配;这些字母设置相应的标志:re.A(仅 ASCII 匹配)、re.I(忽略大小写)、re.L(取决于语言环境)、re.M(多行)、re.S(点匹配所有)和re.X (详细),用于整个正则表达式。(这些标志在模块内容中进行了描述。)如果您希望将标志作为正则表达式的一部分包含在内,而不是将标志参数传递给 re.compile() 函数,则这非常有用。