正则表达式:Select 等于单词之间的多行。记事本++
Regex: Select multiple lines between to equals word. Notepad++
我有一个文件,类似于 yaml,我尝试在记事本++中 select 所有 de 行到单词之间,尤其是 "Application"。我尝试使用正则表达式,因为行数和内容是动态的,我想 select 所有单独的段。
这就是我现在拥有的,但是这个正则表达式 select 从第一个 "Application" 到文件末尾。
^Application.*^(?!Application)
文件示例:
Other
Application
uuid='1234567890A'
label='MyLabel'
MessageFlow
uuid='1234567890123B'
....
Application
uuid='1234567890C'
label='MyLabel'
MessageFlow
uuid='1234567890123D'
....
Application
uuid='1234567890E'
label='MyLabel'
MessageFlow
uuid='1234567890123F'
....
Application
uuid='1234567890G'
label='MyLabel'
MessageFlow
uuid='1234567890123H'
我想要加入的群组select:
Application
uuid='1234567890A'
label='MyLabel'
MessageFlow
uuid='1234567890123B'
...
您可以使用的模式是
(?s)^Application.*?(?=\R+Application|\z)
详情
(?s)
- .
现在匹配换行字符
^
- 行首
Application
- 一句话
.*?
- 任何 0+ 个字符,尽可能少,直到出现最左边的
(?=\R+Application|\z)
- 1+ 换行符 (\R+
) 后跟 Application
,或者 (|
) 文件结尾 (\z
) .
我有一个文件,类似于 yaml,我尝试在记事本++中 select 所有 de 行到单词之间,尤其是 "Application"。我尝试使用正则表达式,因为行数和内容是动态的,我想 select 所有单独的段。
这就是我现在拥有的,但是这个正则表达式 select 从第一个 "Application" 到文件末尾。
^Application.*^(?!Application)
文件示例:
Other
Application
uuid='1234567890A'
label='MyLabel'
MessageFlow
uuid='1234567890123B'
....
Application
uuid='1234567890C'
label='MyLabel'
MessageFlow
uuid='1234567890123D'
....
Application
uuid='1234567890E'
label='MyLabel'
MessageFlow
uuid='1234567890123F'
....
Application
uuid='1234567890G'
label='MyLabel'
MessageFlow
uuid='1234567890123H'
我想要加入的群组select:
Application
uuid='1234567890A'
label='MyLabel'
MessageFlow
uuid='1234567890123B'
...
您可以使用的模式是
(?s)^Application.*?(?=\R+Application|\z)
详情
(?s)
-.
现在匹配换行字符^
- 行首Application
- 一句话.*?
- 任何 0+ 个字符,尽可能少,直到出现最左边的(?=\R+Application|\z)
- 1+ 换行符 (\R+
) 后跟Application
,或者 (|
) 文件结尾 (\z
) .