失敗我有以下類型簡單的regex檢查在軌模型
validates :callback_handle, :format => { :with => /[_0-9a-zA-Z]+/ix }, :unless => "callback.nil?"
的檢查,我不想任何非0-9,A-Z A-Z字符通過。所以我把callback_handle設置爲 「!alksjda」(注意!開頭)。 此測試不會失敗。我究竟做錯了什麼?
我試過IRB幾件事情:這是我的了:
1.9.2-p320 :001 > a = "!askldjlad"
=> "!askldjlad"
1.9.2-p320 :002 > a =~ /[_0-9a-zA-Z]+/ix
=> 1
1.9.2-p320 :003 > a = "askldjlad"
=> "askldjlad"
1.9.2-p320 :004 > a =~ /[_0-9a-zA-Z]+/ix
=> 0
我認爲它會返回false或零失敗找到了比賽。
有人能告訴我這裏有什麼不對嗎?
編輯: 我發現=〜會返回比賽的位置。 所以這個問題變成了我怎麼不允許有任何其他角色的東西不匹配?
嘗試使用'/ \ w + $/ix' –