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

正则表达式匹配含空格与连字符的内容问题求助

正则表达式匹配空格与连字符的解决方案

你的问题出在原正则里的\w只匹配字母、数字和下划线,不包含连字符,而且原结构没法处理带连字符的单个字符串块。直接修改字符集和结构就能解决:

修改后的正则表达式

/^[\w-]+(?:\s+[\w-]+)*$/

规则拆解

  • ^ 和 $:锁定整行匹配,避免部分匹配
  • [\w-]+:匹配由字母、数字、下划线和连字符组成的连续字符块,+保证至少有一个字符
  • (?:\s+[\w-]+)*:非捕获组,匹配“空格+字符块”的组合,*允许这种组合出现0次或多次,完美适配带空格的多短语内容

可选优化(如果不需要下划线)

如果你的场景里不需要匹配下划线,把\w换成[a-zA-Z0-9]即可:

/^[a-zA-Z0-9-]+(?:\s+[a-zA-Z0-9-]+)*$/

验证你的输入

这个正则能完美匹配你给出的所有内容:

578094-131208138004
568315-131208116005
LG506339301
ROTABLE NO 2 BEARING

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 19:43:13