抓取除Python中特定短语后面的数字以外的6长的数字



我正在使用Python,以备不时之需。

我正试图从一个文件中获取所有6个长的数字:([0-9]{6}),它运行良好。

但我想忽略任何这样的数字,如果它们前面紧跟着"0";过时的#:";。

例如,Obsolete #:748275会被忽略,但something else 957252不会被忽略。

我正在尝试像[^Obsolete #:]([0-9]{6})这样的东西,但它根本不起作用/无论如何都抢了号码。

使用一个负的lookbacking。

(?<!Obsolete #:)b(d{6})b
试试看:https://regex101.com/r/RsMoi9/1

说明:

  • (?<!Obsolete #:):负面回顾。不要匹配此之后的任何内容
  • b:字边界
  • (d{6}):捕获六位数字
  • b:另一个单词边界

最新更新