gpt4 book ai didi

regex - 多行正则表达式布局

转载 作者:行者123 更新时间:2023-12-01 06:53:23 25 4
gpt4 key购买 nike

我有一个正则表达式:Regex("((group1)(group2))(group3)")

我想以一种看起来漂亮清晰的方式对其进行格式化,即:

(
(group1)
(group2)
)
(group3)

例如我试过这个:

Regex("("
+ "(group1)"
+ "(group2)"
+ ")"
+ "(group3)") //--> loses the syntax highlighting in Intellij and a bit messy

Regex("""(
(group1)
(group2)
)
(group3)""") //--> not bad, but not equivalent (adds spaces and \n characters)

有没有办法在保持正则表达式等同于原始和语法突出显示的同时拥有干净的布局?

最佳答案

看起来您仍然可以使用 COMMENTS修饰符(或 (?x) 内联版本):

Regex("""(?x)(          # Group 1
(group1) # Group 2
(group2) # Group 3
)
(group3) # Another group"""

参见 COMMENTS RegexOption 引用:

Permits whitespace and comments in pattern.

如果 # 符号表示模式中的文字 # 符号,则必须对其进行转义。

请注意,文字空格也被认为是格式化空格,即使在字符类中也是如此。如果您需要匹配文字空间,请转义它们:"""(?x)free\spacing""""""(?x)[a-zA-Z\] +""".

关于regex - 多行正则表达式布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44846435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com