我有一个很大的字符串与各种分行
Abc 90231 Test string
Lorem f90045zzzw, etc
90030 many items
079002
09011
09089goes on
我想得到als子串,其中包括900|901|903,最小值后面跟着两个其他数字[0-9]。
我目前的做法
Regex regex = new Regex(@"\(b900..|901..|902..|903..){5,}\b");
我想得到:90231, 90045, 90030, 09089
我不想得到:9002, 09011
实现这一点的正确方法是什么?
1条答案
按热度按时间bbmckpt71#
你可以用
正则表达式匹配
(?<!\d)
-左侧数字边界,左侧不能出现任何数字90
-一个90
子字符串[0-3]
-从0
到3
的数字\d{2,}
-两个或多个数字。要使
\d
只匹配ASCII数字,请使用RegexOptions.ECMAScript
选项编译正则表达式。参见regex demo。