我有这个ruby正则表达式用于验证用户输入用逗号分隔的元关键字。
validates_format_of :tags, :with => /^\s*[A-Za-z0-9]+(\s*,\s*[A-Za-z0-9]+)*\s*$/u
我想为此正则表达式添加更多2个条件:
将关键字限制为4个关键字。
使用ñáéíóú
p{L}\s\p{N}
等西班牙字符
如何将此2个条件添加到此正则表达式中? 谢谢
答案 0 :(得分:1)
/^(([^,]+),){0,3}([^,]+)$/
您可以像这样进行验证:
validates_format_of :tags, :with => /^(([^,]+),){0,3}([^,]+)$/
或使用validates
方法
validates :tags, format: {with: /^(([^,]+),){0,3}([^,]+)$/}
两者都会做同样的
注意:您应该检查Rubular,它是一个很棒的Ruby正则表达式在线编辑器