regex 使用正则表达式获取特定字段

eanckbw9  于 2023-06-25  发布在  其他
关注(0)|答案(2)|浏览(95)

我正在尝试从荷兰银行文件中获取特定字段:支付的描述用:86:指示。
但是我需要的字段在下面两行。
示例:

:86:GIRO··1234567····················ABCD
STREET·99····················CITY
LB1234NL·························DATE

我想得到的参考“LB1234NL”的结果。
我就快到了,但还没到:

(?<=:86:.{1,65}\r\n)(.*\r\n){2}

这给了我第二和第三行。但我被困住了。

goqiplq2

goqiplq21#

这将其提取为第一组:

(?<=:86:.*\n.*\n)\w+

请注意,您没有指定语言和操作系统。在Linux中使用Perl。

blpfk2vs

blpfk2vs2#

使用perl可以提取该值:

perl -0pe 's/:86:(?:[^\r\n]*\r?\n){2}([A-Z0-9]+)([^\r\n]*\r?\n)*/\1/' file

相关问题