繁体   English   中英

如何用正则表达式匹配 n 行

[英]How to match n number of lines with regex

我有一些这样的文字

Notes:
He jumped the sea-horse
but it looked ropey
Then he left

但有时它是这样的

Notes:




Clay is only green
When it is seen

我只需要在“注释”之后捕获 4 行文本,因此 output 应该是

Notes:
He jumped the sea-horse
but it looked ropey
Then he left

对于第二个例子

Notes:

我试过匹配换行符,但它只在正则表达式的 rest 之后匹配

Notes:.*\n{4}

如何创建一个正则表达式,允许我对整行和换行重复匹配四次? (这是非捕获组吗??)

如果我对问题的理解正确,并且希望捕获前4行,而不管它们是否为空白,则最好不要使用regex,而只将换行符拆分为文本,这样就可以得到字符串。 像这样:

string[] lines = text.split("\\r")

然后,简单地挑选数组的前四个元素。

您很接近-在Notes:.*\\n{4}{4}仅绑定到换行符,因此它将仅捕获“ Notes:”,后跟任何内容,后跟4个空行。

您正在寻找类似Notes:\\n((?:.*\\n){1,4})东西Notes:\\n((?:.*\\n){1,4})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM