正则表达式帮助拆分字符串

时间:2012-05-08 12:53:54

标签: javascript regex

我想将此字符串拆分为数组

"Test One@,@10000@,@Test Two@,@10001"

只保留文字,其余的都可以消失。 我最终会以

结束
[ "Test One", "Test Two" ]

这方面的正则表达式正在逃避我。有什么帮助吗?

4 个答案:

答案 0 :(得分:6)

如果这就是你所做的一切,我会改用split:

>>> "Test One@,@10000@,@Test Two@,@10001".split('@,@');
["Test One", "10000", "Test Two", "10001"]

答案 1 :(得分:3)

var string = "Test One@,@10000@,@Test Two@,@10001";

var array = string.match(/([a-z\s]+)/ig); // ["Test One", "Test Two"]

答案 2 :(得分:1)

string.split(..)方法呢?

var split_array = "Test One@,@10000@,@Test Two@,@10001".split("@.@");

答案 3 :(得分:1)

你不需要正则表达式。您可以使用标准字符串函数。基于 Leonard Challis '回答(返回所有元素,而不仅仅是单词),您可以执行以下操作:

var myStrings = "Test One@,@10000@,@Test Two@,@10001".split('@,@');
var splitList = [];

var i = myStrings.length;
while(i--) {
    if(IsNaN(myStrings[i])) splitList.push(myStrings[i]);
}

splitList现在只包含单词,具体是您要求的单词。其内容如下:

["Test One", "Test Two"]

您要求的是什么。