gpt4 book ai didi

javascript - 正则表达式 3 数字部分用破折号分隔

转载 作者:行者123 更新时间:2023-11-30 17:36:13 25 4
gpt4 key购买 nike

我想在 JavaScript 中为字符串创建一个 RegExp 验证,它可以包含 3 个部分:

P1-P2-P3

遵循以下规则:

  • P1、P2、P3只能是数字
  • 每部分长度为1-13位
  • 整个字符串不能超过 20 个字符
  • P2 和 P3 部分是可选的(意味着 34 已经是一个有效的字符串,或者 34-6565 或者,566-233455-23232 ).

目前我有这个,但我缺少整个字符串长度,我不知道如何定义可选部分:

/^.\d{1,13}-\d{1,13}-\d{1,13}$/

以下是几个有效条目:5656、33434-2323-45、12-4345-12、1234567890123-123456、1234567890123-12-56

无效条目:34453454351234566787、1234567890123-1234567890123、23455-233-123-3434、34sd1322-23、31234as...

最佳答案

您可以使用:

^(?=\d{1,13}(-\d{1,13}){0,2}$)[\d-]{1,20}$

在线演示:http://regex101.com/r/sM6wQ7

说明:

enter image description here

关于javascript - 正则表达式 3 数字部分用破折号分隔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21987982/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com