【问题标题】:Regex Expression on 16-digit number16 位数字的正则表达式
【发布时间】:2018-11-14 06:04:12
【问题描述】:

我被这个正则表达式问题困住了。

一个 16 位的信用卡号,第一个数字是 5,第二个数字是 1、2、3、4 或 5(其余数字可以是任何数字)。

到目前为止,我有^4[1,5]\d{14},我知道我错过了很多东西,但我不知道我错过了什么..

请帮忙,谢谢!

【问题讨论】:

标签: regex


【解决方案1】:

查看正则表达式的开头:

^4[1,5]

这表示数字必须以 4(而不是 5)开头,并且第二个字符必须是 1、逗号或 5。

你想要这个代替(当然是其余的):

^5[1-5]

注意使用- 而不是, 来表示字符范围。

【讨论】:

    【解决方案2】:

    您正在寻找的完整正则表达式如下

    ^5[1-5]\d{14}$
    

    Demo

    您的错误在于您使用 1,5 作为范围,但这只会匹配 1 ,5 作为字符。要使用范围,在括弧之间需要-

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-24
      • 2020-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多