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

寻求可匹配*******-1234格式的Java正则表达式解决方案

解决匹配*******-1234格式的正则问题

你的原始正则^[0-9-*]无法工作的原因很明确:它仅能匹配单个字符(数字、连字符或星号),而且只校验字符串开头的第一个字符,完全不符合你需要的“若干星号+连字符+数字序列”的格式。

根据你给出的示例格式,这里提供几种针对性的正则方案:

1. 固定长度匹配(严格匹配7个星号+4位数字)

如果你的格式是固定的7个星号加4位数字,用这个:

^\*{7}-\d{4}$
  • ^:匹配字符串开头
  • \*{7}:匹配恰好7个星号(*在正则里是特殊字符,必须用\转义)
  • -:匹配字面量连字符
  • \d{4}:匹配恰好4位数字
  • $:匹配字符串结尾

2. 可变长度匹配(任意数量星号+任意数量数字)

如果星号和数字的数量不固定,但必须满足“至少1个星号+连字符+至少1个数字”的结构:

^\*+-\d+$
  • \*+:匹配1个或多个星号
  • \d+:匹配1个或多个数字

3. 范围长度匹配(自定义星号和数字的数量范围)

比如要求星号在5-10个之间,数字在3-6位之间:

^\*{5,10}-\d{3,6}$
  • {5,10}:匹配5到10个星号
  • {3,6}:匹配3到6位数字

测试示例

  • 匹配成功:*******-1234、********-56789、*****-123
  • 匹配失败:******1234(缺少连字符)、*****-abcd(数字部分非数字)、****--1234(多个连字符)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 15:11:01