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

JavaScript正则表达式需求:仅允许开头含*,末尾4位禁*

符合要求的正则表达式实现

你需要调整正则规则,满足两个核心要求:

  1. 星号仅能出现在字符串开头(中间及其他位置不能有星号)
  2. 字符串末尾4位不能包含星号
    同时整体仅允许字母、数字和星号(星号仅限开头)

最终的正则表达式为:

^[a-zA-Z0-9]+$|^\*+[a-zA-Z0-9]{4,}$

规则拆解说明

  • ^[a-zA-Z0-9]+$:匹配完全由字母或数字组成的字符串,这类字符串没有星号,自然满足末尾无星号的要求,同时覆盖长度小于4的有效场景(比如test)。
  • ^\*+[a-zA-Z0-9]{4,}$:匹配开头有1个或多个星号,且后面跟着至少4个字母/数字的字符串。{4,}确保星号之后的内容足够长,使得整个字符串的最后4位都是字母/数字,不会包含开头的星号,同时限制星号只能出现在开头位置。

测试用例验证

逐个验证你给出的测试用例:

  • test:匹配第一个分支 → 有效
  • test1234:匹配第一个分支 → 有效
  • test@#_:包含非字母/数字/星号的字符 → 无效
  • ****1234:匹配第二个分支 → 有效
  • *tes**1234:中间包含星号,不符合星号仅在开头的规则 → 无效
  • test****:末尾4位是星号,不匹配任何分支 → 无效

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 15:21:02