首页 > 解决方案 > 如果它出现在匹配之前,如何忽略基于单词的匹配

问题描述

我有类似下面的东西

Payment Instrument modified. payment no: 5000000000000000, method: C for transponder: 5000000000000000 transponder type: A

在上面我的正则表达式只需要匹配之后出现的 5000000000000000payment no:

图案:([payment no: ][0-9]{4}[0-9]{0,16})([0-9]{4})

标签: regexregex-negationregex-lookarounds

解决方案


您可以使用正则表达式(?<=payment no: )\d+

  • (?<=payment no: )确保payment no:在你的比赛之前有

  • \d+匹配任何数字 1 次或多次。


没有后视的版本将是payment no: (\d+)

演示。


推荐阅读