如何通过回车和空格拆分字符串

时间:2015-01-16 12:16:53

标签: javascript regex split

为什么我会问一个简单的问题:

嗨,很多人问过如何在javascript中按多个值拆分字符串,但是我不明白它在分组问题中的/[^\w\s]|_/是如何工作的,所以我不知道如何修改它以符合我的目标。

我需要什么:

我的html中有一个textarea,因此用户可以编写以多种方式格式化的单词(总是文本,如果他们键入数字,它将被视为文本)。

我的代码:

<div class="ui-block-c">
   <textarea id="writtenWord" rows="1" cols="50"></textarea>
</div>


var writtenWord = document.getElementById("writtenWord");
var theWord = writtenWord.value.toUpperCase();
res = theWord.split(" ");

for (var i = res.length - 1; i >= 0; i--) {
        ArrayWords.push(res[i]);
    };

我想要的是什么:

要理解它是如何工作的,所以我可以改变条件+一个分裂单词的工作示例,即使用户按下回车键或键入5个空格......

1 个答案:

答案 0 :(得分:6)

只需使用正则表达式/\s+/

res = theWord.split(/\s+/);

以上将分为1个或多个空格。 \s表示空格,+是一个量词,意味着匹配前一个标记(在本例中为空格(\s))1次或更多次。

你还需要

ArrayWords = res;

不需要循环和推送。另一种方法是用一个空格替换多个空格并仅在一个空间上分割

res = theWord.replace(/\s+/," ").split(" ");