Title1
......
Title2: Description
...................
Title3
......
我正在尝试匹配Title1
, Description
和Title3
。使用(?<=: )(.*)(?=\n\.)
,我可以匹配Description
。我不知道如何匹配 Title1
, Description
和Title3
一起。
最佳答案
在 VSCode 中,您可以通过查找整个文件的开头或冒号后跟空格来匹配字符串:
(?<=:\s|^(?![^:\n]*:)).*(?=\n\.)
查看演示截图:
详细信息:
-
(?<=
- 正向回顾的开始(要求其模式与当前位置左侧的文本立即匹配):-
:\s
- 一个冒号和一个空格 -
|
- 或 -
^(?![^:\n]*:)
- 没有:
的行的开头除:
之外的任何零个或多个字符之后和换行符
-
-
)
- 回顾结束 -
.*
- 该行的其余部分 -
(?=\n\.)
- 需要换行符和.
的正向前瞻立即出现在当前位置的右侧。
请参阅regex demo .
关于regex - 如何将以下内容与正则表达式匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67683933/