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

求助编写符合首8位大写末尾可带1位数字规则的正则表达式

你写的^[A-Z]{1,8}\d{0,1}$存在的问题是没有限制数字的出现前提:只要总长度不超过9,数字可以跟在1到7个字母之后,这就导致FT5这类总长度不足9、但末尾带数字的字符串也会被匹配,不符合要求。

正确的正则可以直接对应题目要求的两类合法格式,用分支逻辑实现:

^[A-Z]{1,8}$|^[A-Z]{8}\d$

规则说明

  • 正则用|拆分出两个互斥的匹配分支,首尾的^和$确保是整串完全匹配,不会出现部分匹配的误判
  • 第一个分支^[A-Z]{1,8}$匹配1-8位纯大写字母的合法场景
  • 第二个分支^[A-Z]{8}\d$匹配8位大写字母+1位数字的9位长度合法场景

验证效果

  • 不匹配案例:S3、FT5、FGTU7都属于总长度不足9但末尾带数字,不符合两个分支的规则;ERTYUOP9总长度为8但末尾带数字,同样不匹配;ERTGHYUKM总长度为9但末尾是字母,不匹配第二个分支
  • 匹配案例:E、ERT、RTYUKL符合1-8位纯大写字母规则;VBNDEFRW3符合8位大写字母加1位数字规则

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 05:24:05