javascript - 逗号分隔的数字正则表达式 - 接受管道字符

标签 javascript regex

我为 javascript 编写了一个小的正则表达式。它应该只接受以逗号分隔的数字。

有效示例是:

1 single value allowed
1,278,3780,50
1,56,90, (trailing comma allowed)

无效的示例是:

1,45 67

1, gj, + (any special character and characters)

正则表达式为:/^[\d|\,]+/g

但是,它也接受 | (管道符)。

Like: 1|46|6778|567

我做错了什么?我错过了什么? 请关注此link到我的正则表达式

最佳答案

您不需要在字符类中使用竖线 (|) 和转义字符。另外,作为正确的方法,您可以使用以下正则表达式:

 /^(?:\d+\,)+\d+$/g

Regular expression visualization

Debuggex Demo

由于我错过了您的编辑,如果尾随逗号是有效的情况,您可以简单地使用以下正则表达式:

^(\d+,?)+$

关于javascript - 逗号分隔的数字正则表达式 - 接受管道字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30620774/

相关文章:

javascript - 为 css 和 js 提供服务的 cookieless 域-组织代码的方式?

javascript - 学习 JavaScript 是否有必要使用 HTML 5 的所有功能?

javascript - window.load 不起作用

regex - 与 EXACTLY 2 '*' 匹配的行的 Grep 命令

Python正则表达式从字符串中提取MAC地址

javascript - JS过滤数组内的数组

javascript - 如何在 react.js 中使组件在滚动时显示/隐藏

regex - 从日志文件中提取特定的 XML

regex - 如何在 Perl 中有效地匹配许多不同的正则表达式模式?

如果字符串包含所有单词或条件,则正则表达式匹配