【发布时间】:2018-11-20 12:12:30
【问题描述】:
尊敬的社区成员!
我正在努力找出正则表达式问题。 目标是使用关键字 (consectetur|tempor incididunt|proident|consequat) 作为分隔符将文本拆分为单独的部分,并将关键字添加到捕获的文本部分。再次开始捕获新组,直到发现另一个关键字。 不幸的是,我一直在寻找捕获最后一段文本的解决方案,该文本没有关键字,必须添加到最后一个捕获组的末尾或新的团体。这甚至可以使用正则表达式解决吗?
请注意底部的链接
正则表达式: (.*?)(consectetur|tempor incididunt|proident|consequat)
文本: Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua。 Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat。 Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur。 Exceptioneur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum。
期望的结果:
第 1 场比赛
Lorem ipsum dolor sit amet,
结构
第 2 场比赛
adipiscing elit, sed do eiusmod
临时事件
第 3 场比赛
ut labore et dolore magna aliqua。 Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
后果
第 4 场比赛
。 Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur。 Exceptioneur sint occaecat cupidatat non
高明
sunt in culpa qui officia deserunt mollit anim id est laborum。
下面,我附上了我目前所拥有的支持信息:
提前感谢您的帮助!
【问题讨论】:
-
我想你想要
(?s).*?(?:consectetur|tempor incididunt|proident|consequat|\Z) -
请在您的问题中添加您的正则表达式以及输入和所需输出(也作为文本)的最小示例!
-
@WiktorStribiżew,非常感谢您的回答!我已将“\Z”作为关键字之一,它有所帮助。
-
@KlausD。感谢您的建议!已更正。