我正在尝试在匹配某个单词("METROS"(之前提取文本,并且我正在努力解决换行符(""(。我只想忽略比赛前的第一个换行符(而不是第二个(。
有什么建议吗?
原始文本: 拿督德尔卢格 MIDE UNA SUPERFICIE DE CINCUENTA Y\N新芙地铁夸德拉多斯。
我想要的文本:MIDE UNA SUPERFICIE DE CINCUENTA Y 新芙
我正在使用的正则表达式:
([^\n{1}]n.*)(?=METROS)
到目前为止我的结果:Y 新芙
提前谢谢你!
或者,您也可以使用捕获组获取值。
匹配不带换行符的可选前导空格字符。然后启动与该行的其余部分(包括换行符(匹配的捕获组。在下一行继续使用非贪婪.*?
量词捕获 METROS 第一次出现之前的内容。
^[^Srn]*(.*r?n.*?) METROSb
^
行首[^Srn]*
匹配不带换行符的可选前导空格字符(
捕获组 1.*r?n.*?
)
关闭组METROSb
匹配一个空格,METROS后跟一个单词赏金
正则表达式演示
试试这个(^.*n?.*)(?=METROS)
请删除""后面的?
,如果在METROS
之前总是有一个换行
(.*n{1})(.*n.*)(?=METROS)
我可以想到的正则表达式(第二组(。如果上述内容不适合您,则更大的示例会有所帮助。