1

ユーザーがカンマで区切られたメタキーワードを入力することを検証するために、このルビー正規表現があります。

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つの条件をこの正規表現に追加するにはどうすればよいですか? ありがとうございました

4

1 に答える 1

1

ねえ、私はこの正規表現がトリックを行うと思います。

/^(([^,]+),){0,3}([^,]+)$/

次のように検証を行うことができます。

validates_format_of :tags, :with => /^(([^,]+),){0,3}([^,]+)$/

またはvalidates方法で

validates :tags, format: {with: /^(([^,]+),){0,3}([^,]+)$/} 

どちらも同じことをします

注:Rubularを確認する必要があります。これは、優れたRuby正規表現オンラインエディターです。

于 2012-05-17T00:05:52.060 に答える