Ruby on rails 括号搞乱了rails中的验证
我有以下验证:Ruby on rails 括号搞乱了rails中的验证,ruby-on-rails,regex,validation,Ruby On Rails,Regex,Validation,我有以下验证: validates_format_of :title, :with => /^[A-Z0-9 áàâäãçéèêëíìîïñóòôøöõúùûüý'-.]*$/i, :message => "must contain only letters, numbers, dashes, periods, and single quotes" 这在大多数情况下都有效,但当标题包含开括号和闭
validates_format_of :title,
:with => /^[A-Z0-9 áàâäãçéèêëíìîïñóòôøöõúùûüý'-.]*$/i,
:message => "must contain only letters, numbers, dashes, periods, and single quotes"
这在大多数情况下都有效,但当标题包含开括号和闭括号时,它会通过。有人知道如何解决这个问题,或者我的验证正则表达式可能有问题吗?在正则表达式的末尾有
“-。
这意味着您希望允许撇号和句点之间(包括撇号和句点)的所有字符,就像在正则表达式开头使用A-Z和0-9时所做的那样
表达式/['-.]/
允许所有这些字符:'()*+,-.
在[]中,需要转义-字符。我认为这将按照您希望的方式进行:
/^[A-Z0-9 áàâäãçéèêëíìîïñóòôøöõúùûüý'\-.]*$/i
附言:你不必逃避现实。方括号内[]