0

私はテキストエリアを持っています。段落から各文字列を分割しようとしていますが、段落には ,.!? のような適切な文法ベースの句読点区切り文字があります。ある場合はそれ以上。

私はJavascriptを使用してこれを達成しようとしています。この回答のように正規表現を使用して、そのような文字列をすべて取得しようとしています

しかし、ここでは、私にとってjavascriptでは機能していません。より明確にするために、これが私のコードスニペットです

$('#split').click(function(){
    var textAreaContent = $('#textArea').val();
    //split the string i.e.., textArea content
    var splittedArray = textAreaContent.split("\\W+");
    alert("Splitted Array is "+splittedArray);
    var lengthOfsplittedArray = splittedArray.length;
    alert('lengthOfText '+lengthOfsplittedArray);
  });

分割できないため、常に長さが 1 として表示されます。ここで適切な正規表現は何でしょうか。

4

3 に答える 3

2

正規表現は Java と JavaScript で異なるべきではありませんが、Java の.split()メソッドは正規表現文字列を受け入れます。JavaScript で正規表現を使用する場合は、次のように作成する必要があります。

.split(/\W+/)

デモ: http://jsfiddle.net/s3B5J/

正規表現リテラルを作成する/andに注意してください。/Java版は文字列で囲っていたので「\」が2つ必要でした。

参照:

于 2013-05-18T14:03:03.643 に答える
0

これを試すことができます

textAreaContent.split(/\W+/);
于 2013-05-18T14:04:56.050 に答える
0
\W+ : Matches any character that is not a word character (alphanumeric & underscore).

英数字とアンダースコア以外はカウントされます。分割する必要がない場合" " (space)は、使用できます。

var splittedArray = textAreaContent.split("/\n+/");
于 2013-05-18T14:32:47.547 に答える