如何使用正则表达式来判断字符串是否有10位数?

Jef*_*ffK 4 regex asp.net validation

我需要找到一个测试,一个输入字符串正好包含10个数字字符正则表达式,同时仍然允许在字符串中的字符.

我将剥离所有在后处理的非数字字符,但我需要为客户端验证的正则表达式.

例如,这些都应该匹配:

  • 1234567890
  • 12-456879x54
  • 321225 -1234AAAA
  • xx1234567890

但这些不应该:

  • 123456789(数字不够)
  • 12345678901(数字太多)

这似乎应该很简单,但我无法弄明白.

Amb*_*ber 13

/^\D*(\d\D*){10}$/
Run Code Online (Sandbox Code Playgroud)

基本上,匹配任意数量的非数字字符,后跟一个数字,后跟任意数量的非数字字符,恰好是10次.