正規表現を使用して、Ruby クラスのテキスト フィールドからコンマ区切りの単語の文字列を検証しようとしています。以下が有効である必要があります。
word
word, word, word
word,word,word
また、以下は無効である必要があります。
word word word
私はこれがうまくいくと思った
/([a-z]+){1}(,\s*[a-z]+)*/i
Rubular では有効に見えますが、次のようにクラスで検証すると、無効な文字列であるべきものを受け入れます。
@tag_regex = /([a-z]+){1}(,\s*[a-z]+)*/i
validates :tags,
:allow_blank => true,
:format => { :with => @tag_regex, :message => "Invalid tag format." }
私の問題が正規表現にあるのか、それとも検証方法自体にあるのかはわかりません。どんな助けでも大歓迎です。