有以下正则表达式来描述正则表达式:
validates :phone, format: { with: /\A(\+7|8)[0-9]{10}\z/ }
'89277777777'必须与此表达式匹配,'+ 79277777777'也必须匹配。但我总是收到“无效电话”的消息。我该如何解决?谢谢。
答案 0 :(得分:1)
如果你想做的只是一种验证国际号码的简单方法,可能或者不以+
开头,后跟 7 或 8 ,然后再增加10位数,那么这个正则表达式应该可以解决问题:
\A\+?[78]\d{10}\z
如果我的假设不正确,请在评论中告诉我们,我们将努力寻找更好的解决方案。
注意:不要忘记用//包围正则表达式 - 由于使用Debuggex
,我在这里没有这样做