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

regex help splitting a string

本文关键字:字符串 拆分 帮助 正则表达式      更新时间:2023-09-26

我想把这个字符串分成一个数组

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

只保留文字,其余的就可以消失。所以我最终会得到

[ "Test One", "Test Two" ]

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

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

>>> "Test One@,@10000@,@Test Two@,@10001".split('@,@');
["Test One", "10000", "Test Two", "10001"]
var string = "Test One@,@10000@,@Test Two@,@10001";
var array = string.match(/([a-z's]+)/ig); // ["Test One", "Test Two"]

string.split(..)方法呢?

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

你不需要正则表达式。您可以使用标准字符串函数。基于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"]

这是你要求的。