如何使用正则表达式(python 引擎)查找某个字符串,匹配它上面的几行以及它后面的所有文本,直到另一个指定的字符串?文本来自日志文件,几乎所有值都是动态的。我只找到了一个常量字符串,它位于我想要捕获的块的中间。例如:这是我不想匹配的一行文本。这是我想要匹配的一行文本。这是我想要匹配的一行文本。要匹配的字符串我想要捕获的文本和数字行以及其他标记 abc123:/()&。我想要捕获的文本和数字行以及其他标记 abc123:/()&。我想要捕获的文本和数字行以及其他标记 abc123:/()&。结束但不捕获的字符串我不想要的文字我不想要的文字我可能还应该注意到,这些行中的大多数不仅可以包含文本,还可以包含数字和其他标点符号,我需要获取所有这些内容。如果有人能指出我正确的方向,我将非常感谢您的帮助。谢谢!
1 回答
繁花不似锦
TA贡献1851条经验 获得超4个赞
试试这个模式: (?=(.+\n){2}String to match)[\w\W]+(?=String to end on but NOT capture)
说明:这展望与(?=(.+\n){2}String to match)
装置,这些装置保证,那接踵而来的是2号线.+\n
(在这里你需要指定你要多少行字符串之前匹配)和String to match
。如果为真,则开始匹配 , 表示的每个字符[\w\W]+
,直到位置后跟String to end but NOT capture
,这是通过(?=String to end on but NOT capture)
(再次 - 正向前瞻)实现的。
添加回答
举报
0/150
提交
取消