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

如何使用RegEx同时校验有效完整信用卡号与部分掩码信用卡号

适配后的正则表达式

如果你需要同时匹配完整的16位4开头数字卡号和12位X+4位数字的掩码卡号,使用以下规则:

^(?:4\d{15}|X{12}\d{4})$

如果需要保留你原有规则支持「输入过程中未完成的全数字卡号」的特性(即允许4开头1到16位数字),可以调整为:

^(?:4\d{0,15}|X{12}\d{4})$

如果还需要支持掩码录入过程中的校验(比如用户还没输完12个X和4位数字时不报错),可以用这个版本:

^(?:4\d{0,15}|X{0,12}\d{0,4})$

规则说明

  • ^ 和 $ 分别匹配字符串的开头和结尾,避免部分匹配导致校验失效
  • (?:...) 是非捕获分组,用来整合两个互斥的匹配分支,不会额外捕获匹配内容影响后续逻辑
  • 第一个分支 4\d{15}(或4\d{0,15})是原有卡号规则的兼容逻辑,匹配4开头的数字型卡号
  • 第二个分支 X{12}\d{4} 匹配12个大写X后跟4位数字的掩码格式,如果你需要支持小写x,可以将X替换为[xX],或者给正则开启不区分大小写的标识

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 10:36:05