正则表达式^.*RIN.*\r\n(.*\r\n)*(?=^1.*)
或更好的
正则表达式^.*RIN.*\r\n(.*\r\n)*(?=^1 .*)
所以有你的regx。一无所有。或\ r \ n
添加
了解释。^匹配行的开头,然后匹配.*所有字符(尽管不是新行'cos,我们打勾的点与新行框不匹配),然后 (.*\r\n)*匹配所有直到您不匹配的东西之后的行。(?= ^ 1。*)因此,就作为下一个字符立即出现的内容进行前瞻,但是这次不匹配它,而是寻找从1开始的行,然后是空格,然后是其他内容。如果在寻找的时候发现它,然后匹配该位置。
因此,请查看正则表达式标识的所有内容都是匹配的。从正则表达式开始处标识的文本,到标识匹配位置并位于正则表达式末尾的正则表达式前行。

UPDATE
对上述内容稍作纠正。
A)您要求以“ 2 RIN”开头的行。
B)它需要对* s中的一个进行非贪婪评估,以便它在第一次出现^ 1之前匹配。
C)您需要考虑文件是否带有* nix或Windows行尾。您可以在文档中查找并查找\ r \ n或\ n,然后查看匹配的内容,以查看文件使用的行尾。那是一种方式。您的文件具有* nix行结尾,如notepad ++窗口右下方所示。
所以你想要这个正则表达式 ^2 RIN.*\n(.*\n)*?(?=^1.*)
如果要复制/粘贴,可能会发生Windows行尾,那么您将需要此正则表达式 ^2 RIN.*\r\n(.*\r\n)*?(?=^1.*)
但是,请确保直接打开文件或文件副本,当然,您需要的是\ n版本,即* nix版本,即^2 RIN.*\n(.*\n)*?(?=^1.*) 因为Windows软件正在编写文件,所以正在以* nix样式行结尾。