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

如何在TypeScript中实现特定格式字符串的模式校验

TypeScript字符串校验实现

要满足你提出的三个校验规则,可以通过正则表达式结合简单函数实现,以下是具体方案:

实现思路

  1. 用正则表达式精准匹配xxxx-xxx的结构,同时约束每个x只能是大写字母(A-Z)或数字(0-9)
  2. 正则表达式会自动限制字符串长度为8(4个字符+1个连字符+3个字符),满足最大长度8的要求

代码实现

function validateString(str: string): boolean {
    // 正则规则:匹配4个大写字母/数字 + 连字符 + 3个大写字母/数字,且字符串首尾完全匹配
    const pattern = /^[A-Z0-9]{4}-[A-Z0-9]{3}$/;
    return pattern.test(str);
}

// 示例测试
const str = "ABC1-AB9";
console.log(validateString(str)); // 输出: true

// 不符合规则的测试案例
console.log(validateString("abc1-ab9")); // 含小写字母,输出: false
console.log(validateString("ABC12-AB9")); // 长度超过8,输出: false
console.log(validateString("ABC1_AB9")); // 连字符错误,输出: false
console.log(validateString("ABC1-AB")); // 长度不足,输出: false

正则表达式解析

  • ^:匹配字符串的起始位置
  • [A-Z0-9]{4}:匹配恰好4个大写字母或数字
  • -:匹配中间的英文半角连字符
  • [A-Z0-9]{3}:匹配恰好3个大写字母或数字
  • $:匹配字符串的结束位置

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 19:33:33