9999.9999或9999或9999:9999的正则表达式
regular expression for 9999.9999 or 9999 or 9999:9999
我想要0000.0000-9999.9999或0000-9999或0000:0000-9999:9999的正则表达式。
可能是:/^('d{4}$'.'d{4}$)|('d{4}$)|('d{4}$':'d{4}$)/
吗
请引导
您正在寻找这个
^'d{4}(?:([.:])'d{4})?(?:-'d{4}(?:'1'd{4})?)?$
解释
^#字符串的开头''d{4}#四位数字(?:#非捕获组([.:])#分隔符字符(存储在组1中)''d{4}#四位数字)?#末端组,使为可选(?:#非捕获组-#短划线''d{4}#四位数字(?:''1''d{4})?#无论第1组是什么加四位数字(可选))?#末端组,使为可选$#字符串结尾
这仍然允许CCD_ 2。您可以通过在成功匹配后评估字符串长度来检查这种特殊情况(即,必须是4、9或19)。
或者,您可以在正则表达式前面加上(?=.{4}$|.{9}$|.{19}$)
。
$
标记行的结束,就像^
标记行的开始一样,所以/^('d{4}$'.'d{4}$)|('d{4}$)|('d{4}$':'d{4}$)/
是错误的。
我会试试:
/^('d{4}'.'d{4})|('d{4})|('d{4}':'d{4})$/
相反。
您也可以使第二部分可选,并允许.
和:
(如果存在):
/^'d{4}(['.:]'d{4})?$/
(我更喜欢Perl正则表达式,但它也应该适用于JavaScript)
这样就可以了。
/[0-9]{4}(('.|-|:)?[0-9]{0|4})?/
相关文章:
- java.net和javascript之间正则表达式的差异
- Grunt匹配正则表达式
- 不同浏览器中的空白字符正则表达式行为
- 正则表达式在字符串中找到base64
- 子字符串/正则表达式以获取字符串中保存的 SRC 值
- 调用正则表达式匹配的函数
- 使用正则表达式评估电子邮件地址时出现性能问题
- Javascript 正则表达式 : ^[^/s/]+[a-z]{1,}[0-9]*[-_]*[^/][
- JavaScript正则表达式文本与RegExp对象
- 正则表达式只允许 x 个整数
- 使用正则表达式将输入格式设置为单字符逗号、单字符逗号等
- 改进用于验证付款金额的正则表达式
- 正则表达式与数字中的第二个点匹配
- 键按正则表达式以查找具有负值的小数
- 一个正则表达式,用于从JS中的HTML标记中删除id、样式和类属性
- 将po-box javascript正则表达式转换为c#regex
- 在mongoose中使用正则表达式在对象数组中进行查询搜索
- 使用正则表达式捕获“”并分割成阵列
- 将这些正则表达式从javascript转换为Java
- 9999.9999或9999或9999:9999的正则表达式