大概
var string = "word1;word2;word3,word4,word5,word6.word7";
var array = string.split(/[;,.]/);
// array = ["word1", "word2", "word3", "word4", "word5", "word6", "word7"]
的关键是在传递到String#split
方法的正则表达式。字符类运算符[]
允许正则表达式在包含它的字符之间进行选择。
如果您需要拆分包含多个字符的字符串,则可以使用|
进行区分。
var array = string.split(/;|,|./) // same as above
编辑:没有仔细阅读问题。事情是这样的
var string = "word1;word2;word3,word4,word5,word6.word7";
function ends_with(string, character) {
var regexp = new RegExp('\\w+' + character, 'g');
var matches = string.match(regexp);
var replacer = new RegExp(character + '$');
return matches.map(function(ee) {
return ee.replace(replacer, '');
});
}
// ends_with(string, ';') => ["word1", "word2"]
但如果我只是想与结束的话; – user228720 2009-12-10 11:34:45
不错!这工作完美...谢谢! – user228720 2009-12-10 11:56:50
仍然有问题,当检验词3有空格像 ;詹姆斯,乔纳斯沙,代码只打印出霍华德,沙 – user228720 2009-12-10 12:26:51