與這些範圍內開始的任何電話號碼更正:例如:正則表達式,測試電話號碼紅寶石
長度是很重要的,它應該包含在最後
550-559
700-709
770-779
所以6位,我做到目前爲止:
\A(55[0-9])|(70[0-9])|(77[0-9])\d{6}\z
如何修改此正則表達式正常工作?
與這些範圍內開始的任何電話號碼更正:例如:正則表達式,測試電話號碼紅寶石
長度是很重要的,它應該包含在最後
550-559
700-709
770-779
所以6位,我做到目前爲止:
\A(55[0-9])|(70[0-9])|(77[0-9])\d{6}\z
如何修改此正則表達式正常工作?
\A(55[0-9]|70[0-9]|77[0-9])\d{6}\z
簡單的方法是:
/^(55|70|77)\d{7}$/
這是很好的,但是你需要知道用'^ $'中的安全隱患紅寶石regexps。請參閱第7.6節:http://guides.rubyonrails.org/security.html#regular-expressions。改爲使用'\ A \ z'。 – Casper
感謝,更簡單,更美麗)))) –
@Casper這是一個有趣的點,但在這種情況下,我們匹配線,沒有驗證activerecord模型,所以^ $是更正確的。換句話說,text.scan(myregex)將正確行爲,而text.scan(yourregex)則不會。 – pguardiario
感謝的人,在一個將它們組合爲解決__)) –