javascript - 正则表达式匹配位数

标签 javascript regex

我正在编写一个正则表达式来匹配位数。整个字符串可以有至少 6 位数字,并且可以有空格和破折号。

例如

123-45 6  valid
123456    valid
123-56    Invalid

最初我写了一个正则表达式来处理字符串中至少 6 个字符。但是,它不起作用,因为它将破折号和空格计算为 6 的一部分。

[\d\s-]{6,}

尝试过

[\d]{6,}[\s-]

连这个都不行。你能建议如何解决这个问题吗?

另一个尝试:

[[\d]{6,}[\s]*[-]*]

最佳答案

要检查是否存在至少 6 位数字,您可以使用 /(?:\d\D*){6,}/。 如果您还希望它只允许空格和破折号,您可以将模式调整为 /^[ -]*(?:\d[ -]*){6,}$/

关于javascript - 正则表达式匹配位数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38286695/

相关文章:

javascript - 我可以将元素上的事件恢复到操作之前的状态吗?

regex - 是否有任何正则表达式引擎可以提供对它们正在做什么的可见性?

javascript - 使用正则表达式查找模式并获得结果

正则表达式匹配埃及象形文字

Java 正则表达式匹配之前和包括匹配的所有内容

javascript - 在用户向下滚动到 <div> 之前显示一个粘滞条

javascript - 以编程方式将表单和输入设置为 "ng-dirty"

javascript - 响应式菜单在网站上不起作用

javascript - rCharts 中的 multiBarChart (nvd3) 未显示

php - 分解字符串中的空格,排除引号内的内容