Ruby正则表达式如何忽略数字之间的空格?

Rails初学者

我有这个正则表达式:/\A\d{8}\z/如何忽略数字之间的空格?

所以这123 456 781 2 3 45678将是有效的。不只是12345678

我需要验证一个电话号码,例如:123 456 7812 12 12 12

toro2k

我的建议是使用这样的delete方法:

str = '123 456 78'
str.delete(' ').match(/\A\d{8}\z/)
# => #<MatchData "12345678">

但是,如果您只想使用一个正则表达式,则应该执行以下操作,其结果与上述解决方案略有不同:

regexp = /\A\s*(?:\d\s*){8}\z/

'123 456 78'.match(regexp)
# => #<MatchData "123 456 78">

'12345678'.match(regexp)
# => #<MatchData "12345678">

' 1 2 3 4 5 6 7 8 '.match(regexp)
# => #<MatchData " 1 2 3 4 5 6 7 8 ">

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章