有人可以提供仅允许数字和可选连字符
的正则表达式我已经到了phone_number.match(/ [0-9 - ] /);但没有运气
答案 0 :(得分:6)
以下匹配用破折号散布的数字,但不是双破折号:
/^\d+(-\d+)*$/
答案 1 :(得分:2)
您在jquery validate plugin http://docs.jquery.com/Plugins/Validation/CustomMethods/phoneUS
中使用的内容^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$
我来到这里寻找类似的东西,并在http://regexlib.com/找到了我需要的东西,他们有很多表达方式以及有用的备忘单。
答案 2 :(得分:0)
试试这个......
/^[0-9]+(\-[0-9]+)*$/
不是电话号码,而是您想要的评论
答案 3 :(得分:0)
试试这个插件:Masked Input jQuery plugin。它允许制作自己的面具并简化用户的输入。
答案 4 :(得分:0)
/^\w*-?\w*-?\w*$/
答案 5 :(得分:0)
Check this out...
var phoneno = / ^ +?[0-9] +( - [0-9] +)* $ /;
Ans + 954-555-1234
答案 6 :(得分:0)
以下是带连字符
输入的解决方案
$('input[type="tel"]').keyup(function() {
this.value = this.value
.match(/\d*/g).join('')
.match(/(\d{0,3})(\d{0,3})(\d{0,4})/).slice(1).join('-')
.replace(/-*$/g, '');
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="tel"></input>
&#13;