You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写正则表达式忽略数字间空格?匹配含空格的10位数字

解决正则表达式忽略数字间空格匹配10位数字的问题

要匹配包含任意位置空格的10位数字,你可以用下面几种简单的正则写法:

方法一:直接匹配数字+可选空格的组合

最直接的写法是允许数字之间穿插任意数量的空格(首尾也可以有空格,不需要的话可以去掉首尾的\s*):

^\s*\d(?:\s*\d){9}\s*$

拆解一下规则:

  • ^ 和 $ 锁定整个字符串的首尾,避免匹配到更长字符串里的片段
  • \s* 匹配0个或多个空白字符(如果只想限定空格,换成 *即可)
  • \d 匹配第一个数字,后面跟着9次“可选空格+数字”的组合,确保总共有10个数字
  • 首尾的\s*是为了兼容字符串前后带空格的情况,比如4874 526395这种也能匹配

方法二:用正向预查确保数字总数

如果你的正则引擎支持正向预查(比如Python、JavaScript、Java等),也可以这么写:

^(?=(?:\D*\d){10}\D*$)[\d\s]+$

这个写法的逻辑是:

  • 正向预查(?=(?:\D*\d){10}\D*$)先检查整个字符串里恰好有10个数字
  • 然后[\d\s]+匹配由数字和空格组成的内容,确保没有其他非数字非空格的字符

这两种方法都能匹配你给出的所有示例:4874526395、4874 526 395、48745 26395,同时会排除数字总数不是10的情况(比如9位数字加空格、11位数字加空格)。

内容的提问来源于stack exchange,提问作者herculesrockefeller

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 05:55:20