我有一个如下列表:
ABC
44234234
GHG
FGyhyh
Nov2016
/////////////////////////
ABCtt
44234234
GHG
00
FGyhyh
Nov2015
/////////////////////////
ABC
44234234
GHG
hyh
Jan2022
/////////////////////////
使用
^[A-Za-z].*\R([A-Za-z].*)$
正则表达式,我可以选择以字符开头的连续行,但现在我想选择列表中的整个区域,这意味着位于正则表达式目标之前和之后的两个 /////////////////////////
之间。ABC
44234234
GHG
FGyhyh
Nov2016
ABC
44234234
GHG
hyh
Jan2022
我尝试了以下正则表达式,但失败了:
^/+\R\K(?:(?!/+$|^[A-Za-z].*\R[A-Za-z].*$).*\R)*^[A-Za-z].*(?:\R[A-Za-z].*)*(?:\R(?!/+$).*)*(?=\R/+$)
^/+\R\K(?:(?!/+$|\d[\d,]*\R\d[\d,]*$).*\R)*^[A-Za-z].*(?:\R[A-Za-z].*)*(?:\R(?!/+$).*)*(?=\R/+$)
请注意,以下正则表达式适用于以数字开头的连续行:
^/+\R\K(?:(?!/+$|\d[\d,]*\R\d[\d,]*$).*\R)*\d[\d,]*(?:\R\d[\d,]*)+(?:\R(?!/+$).*)*(?=\R/+$)
但我不知道如何为字符行重写这个正则表达式!
请注意,正则表达式必须跳过日期行。
您可以使用这个正则表达式:
^(?:[A-Za-z\d].*\R)+(?:[A-Za-z].*\R){2}(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\d{4}$