フォームフィールドに検証を追加しようとしているので、特定の単語が含まれているとエラーが表示されます。現時点では私はこれを持っている:C#で大文字と小文字を区別しないフォームフィールドの検証を追加するには?
Validation.Add("field-1", Validator.Regex("^((?!TEST)(?!test).)*$", "Field may not contain 'test'"));
これは「TEST」と「テスト」のために正常に動作し、誰かに入る「test」を防ぐことはできません。
私は大文字小文字を区別しないフラグを追加しようとしたが、これは完全に働いて正規表現の停止をした:
Validation.Add("field-1", Validator.Regex("/^((?!TEST)(?!test).)*$/i", "Field may not contain 'test'"));
私も(私?)ケースを無視するために使用することができhere、それのdidn」を読んでトンの仕事はどちらか - 多分私は間違った場所にそれを入れている:
Validation.Add("field-1", Validator.Regex("^((?i)(?!TEST)(?!test).)*$", "Field may not contain 'test'"));
は、「テスト」のすべての可能なバリエーションを追加することなく、このなんとかですか?
'"(?i)^(?!。* TEST)。* $ "'を試してください。 )* $ "'](http://regexstorm.net/tester?p=%5e%28%28%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%) + 29%28%3f!テスト29%28%3f!テスト29%29%29 *%24&i =ここには+ a + tESt +があります)(ただし、ここでの貪欲なトークンは " ")。 –
それには運がありません。 (?i)のバリエーションのように見えますが、すべてを殺します。 – Andy
これはクライアント側でこれを実行するという意味ですか? '(?i)'はJSでは動作しませんが、.NETでのみ動作します(他の正規表現のフレーバでも同様です)。 –