【问题标题】:Regex validation for phone number in LaravelLaravel中电话号码的正则表达式验证
【发布时间】:2017-03-23 05:05:03
【问题描述】:

我编写了一个正则表达式来验证电话号码,例如+1(320)-924-2043

regex:/^\+1\(?([0-9]{3})\)-[0-9]{3}-[0-9]{4}$/

但它不起作用。

【问题讨论】:

  • @sanjay:musefan 的回答是对的。
  • @HirenGohel 谢谢
  • 不用感谢我,感谢@musefan :)
  • 谢谢你们俩 :) @HirenGohel

标签: regex laravel validation


【解决方案1】:

好吧,看来您只需要删除 (? 部分和匹配的 )

/^\+1\([0-9]{3}\)-[0-9]{3}-[0-9]{4}$/

这将正确匹配+1(320)-924-2043

【讨论】:

  • 我的正则表达式工作完美,我已经在正则表达式检查器上检查了它。但你也工作
【解决方案2】:

您的正则表达式有效:/^+1(?([0-9]{3}))-[0-9]{3}-[0-9]{4}$/

var component = {
    input   : $('input[name="number"]'),
    mensage : {
        fields  : $('.msg'),
        success : $('.success'),
        error   : $('.error')
    }
},
    regex  = /^\+1\([0-9]{3}\)-[0-9]{3}-[0-9]{4}$/;

component.input.keyup(function () {
    component.mensage.fields.hide();
    regex.test(component.input.val()) ? component.mensage.success.show() : component.mensage.error.show();
});
.msg {
    display: none;
}
.error {
    color: red;
}
.success {
    color: green;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<input id="number" name="number" type="text" class="required" /> 
<span class="msg error">You shall not pass!</span>
<span class="msg success">You can pass!</span>

【讨论】:

  • 很好用,但我的正则表达式也有效,但我不知道错误在哪里。
【解决方案3】:

这里有很好的服务,您可以检查您的正则表达式。链接http://regexr.com/

这个正则表达式适用于这个模式:/\+1\((\d){3}\)-(\d){3}-(\d){4}/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-18
    • 2014-06-25
    • 2012-02-13
    • 1970-01-01
    相关资源
    最近更新 更多