Regex 用于捕获介于2个常量之间的任何文本的正则表达式
我正在寻找一个正则表达式,它可以捕获2个常量之间的任何文本,例如:Regex 用于捕获介于2个常量之间的任何文本的正则表达式,regex,Regex,我正在寻找一个正则表达式,它可以捕获2个常量之间的任何文本,例如: //==Constant1== -Any -Other -Text //==Constant2== 我需要捕捉整个块或者至少是Constant1和Constant2中的文本,我可以有换行符、数字、任何其他符号(反斜杠、parhentesis等)。我尝试了许多正则表达式,如: \/\/==start==(.*)\/\/==end==/s 但是这不管用,有什么建议吗?这在大多数口味中都管用 ^//==Constant1==[\n
//==Constant1==
-Any
-Other
-Text
//==Constant2==
我需要捕捉整个块或者至少是Constant1和Constant2中的文本,我可以有换行符、数字、任何其他符号(反斜杠、parhentesis等)。我尝试了许多正则表达式,如:
\/\/==start==(.*)\/\/==end==/s
但是这不管用,有什么建议吗?这在大多数口味中都管用
^//==Constant1==[\n\r]
([\s\S]+?)
^//==Constant2==
请参阅(请注意多行
和详细
修饰符!)。
分解,它说:
^//==Constant1==[\n\r] # match //==Constant1== in one line
([\s\S]+?) # anything else lazily in between
^//==Constant2== # up until //==Constant2== in another line
根据您的口味,您可能需要避开前斜杠到
^\/\/==Constant1==[\n\r]
您需要在正则表达式中包含换行符。试试这个:
\/\/==Constant1==\n(+\n)*\/\/==Constant2==
小贴士:您可以在这里尝试您的正则表达式。什么是正则表达式味道?