当前位置: 首页 > 知识库问答 >
问题:

自定义信用卡regex

潘灵均
2023-03-14

我正在使用一个自定义信用卡验证器,它具有以下条件:

    null

对于其他情况,我有以下regex:

r'[456][0-9]{3}-?[0-9]{4}-?[0-9]{4}-?[0-9]{4}': 

共有1个答案

璩涛
2023-03-14

对于最后一个条件,您可以使用否定的lookahead,它断言后面的内容不是数字,后面是3倍或更多的可选的hypen和一个数字。

添加部分的解释(?![-\d]*([0-9])(?:-?\1){3,})

  • (?!)负面前瞻
    • [-\d]*匹配数字或连字符零次或多次
    • ([0-9])捕获组中的一个数字
    • (?:-?\1){3,}在非捕获组中重复3次或更多次可选连字符-?后跟对组1中捕获的数字的反向引用

    添加锚点来断言行的开始^和结束$的regex可能如下所示:

    ^(?![-\d]*([0-9])(?:-?\1){3,})[456][0-9]{3}-?[0-9]{4}-?[0-9]{4}-?[0-9]{4}-?[0-9]{4}$

 类似资料:
  • 获取设备配置信息 根据业务需求获取设备 配置的各种信息。 参数说明 字段 类型 必须 备注 device RKDevice 是 设备 namespace String 是 存储空间、根据业务填写 key String 是 信息存储Key 示例代码 Swift: RokidMobileSDK.device.getServiceInfo(device: RKDevice, namespace: Str

  • 获取设备配置信息 根据业务需求获取设备 配置的各种信息。 参数说明 字段 类型 必须 备注 deviceId String 是 设备Id namespace String 是 存储空间、根据业务填写 key String 是 信息存储Key 示例代码: Kotlin val deviceId: String = "XXX" val namespace: String = "YYY" val ke

  • 我正在我的项目(Angular2 Node.js)中集成一个定制的paypal信用卡支付表单。 参考: (1.) https://developer.paypal.com/docs/integration/direct/payments/credit-card-payments/#create-信用卡支付 (2.) http://code.runnable.com/UXgyne_v2oZyAAC-

  • 问题内容: 我正在通过制作一个简单的Twitter客户端来练习PyQt和(Q)线程。我有两个Qthread。 主/ GUI线程。 Twitter提取线程-每隔X分钟从Twitter提取数据。 因此,每隔X分钟,我的Twitter线程就会下载一组新的状态更新(Python列表)。我想将此列表移交给Main / GUI线程,以便它可以使用这些状态更新窗口。 我假设我应该使用信号/插槽系统将“状态” P

  • 我正在我的android应用程序中实施Fit-bit rest客户端授权。我使用自定义选项卡打开Fitbit授权URL,如“https://www.fitbit.com/oauth2/authorize?response_type=code 未报告此行为的日志。 任何建议都可能有助于我理解这种行为。

  • 我对Java和Spring3(过去8年主要使用PHP)还很陌生。我已经使用spring security 3来处理所有默认的userDetails和userDetailsService,我知道我可以通过使用以下命令访问控制器中登录用户的用户名: 但有两个问题我想不通: > 我希望在用户登录时存储许多其他用户详细信息(如DOB、性别等),并在以后通过控制器进行访问。我需要做什么才能使创建的userD