我想从字符串中检索数字,其字符从 8 或 9 或 6 开头,后跟 8 位数字。
例如
sting string string 85689252 91585555 65987582 sting 12345678 string
输出应为:
85689252
91585555
65987582
你可能想要这个正则表达式:
b[896]d{7}b
我假设数字至少由字母数字和_
以外的其他字符分隔,所以我使用 b
来匹配单词边界。
如果你想放宽条件,正则表达式引擎必须支持向前看和向后看:
(?<!d)[896]d{7}(?!d)
在这种情况下,我只是确保整数之前或后面没有任何数字。
您的问题说后跟 8 位数字,但似乎您的意思是整数应该有 8 位数字 - 所以我根据您的示例输入更改了我的答案。
使用 Regex.Matches
获取与正则表达式匹配的所有字符串。