1

ユーザーが入力したメールアドレスの数を数える必要があります。これらのアドレスは、次のいずれかで区切ることができます。

  • カンマの後にスペースがない-a@example.com,c@example.com.com
  • コンマの後に任意の数のスペースが続く(つまり、誰かがコンマの後に3つのスペースまたは1つだけが続く場合があります)-a@example.com, c@example.com.com
  • 空白のみ-a@example.com c@example.com.com
  • 改行

それをクリーンアップしてアドレスを確実にカウントするための良い方法は何ですか?

通常の'olejavascriptでこれを処理できると思いますが、その価値のためにjQueryを使用しています。

4

4 に答える 4

4

最も簡単な方法は、すべてのコンマを空白に置き換えてから、空白に基づいて文字列を分割することです。条件は必要ありません。

これがその例のフィドルです

于 2012-08-28T19:40:36.047 に答える
2
var emails = input.split(/[\s,]+/);

フィドル

于 2012-08-28T19:43:34.910 に答える
1
var str="YOUR_STR",
    arr = [];
if( str.indexOf(',') >= 0 ) {
   // if comma found then replace all extra space and split with comma
   arr =  str.replace(/\s/g,'').split(',');
} else {
   // if comma not found
   arr = str.split(' ');
}
于 2012-08-28T19:43:33.163 に答える
1
var l = "a@example.com,c@example.com.com a@example.com, c@example.com.com a@example.com c@example.com.com";

var r = l.split(/ |, |,/);

正規表現はそれをかなり簡単にします。

複数のスペースの変更がある場合は、正規表現を少し変更できます。

var r = l.split(/ +|, +|,/);
于 2012-08-28T19:44:58.780 に答える