-4

複数の特殊文字を連続して使用できない正規表現が必要です。

例えば:

'これはテストです'=有効な入力
'これはテストです'=有効な入力
'.......'=無効な入力
'これはテストです'=無効な入力

4

2 に答える 2

5

「特殊文字」の定義方法に応じて、次を使用できます。

var valid = !str.match(/[^a-z0-9\s]{2}/i);

仕様後に更新:

この場合、「特殊」文字は,._-'"

var valid = !str.match(/[-,._'"]{2}/i);
于 2012-06-12T17:18:02.030 に答える
0

これを行うためになぜ正規表現が必要なのですか?

 var is_special_character = function(ch) { ... }

 var is_valid = function(str) {
   var special_characters = 0;
   for(var i = 0; i < str.length; i++) {
     if(is_special_character(str[i]))
       special_characters++;
     else  
       special_characters = 0;
     if(special_characters > 1) return false;
   }
   return true;
 }
于 2012-06-12T17:23:48.853 に答える