我想在JS中分割字符串。我已经知道了函数str.split();
,但我想要一些不同的。如:我有字符串var str = "Hello word"
。我必须从字符o
中分割这些字符串,而不是在数组中转换的字符串,如:array = ['hell', 'o' , ' w', 'o','rd']
var str = "Hello word"
var ary = str.split("o");
// output : ary = ['hell', ' w' ,'rd'];
// I want : ary = ['hell', 'o' , ' w', 'o','rd'];
请任何人帮助我如何得到这样的输出
你可以试试:
var str = "Hello word"
var ary = str.split(/(o)/));
//ary = ['hell', 'o' , ' w', 'o','rd'];
您实际需要的是match
,而不是split
。
str = "Hello word"
ary = str.match(/o|[^o]+/g)
document.write(ary)
split(/(o)/)
也可以,但请注意:
如果separator是包含捕获括号的正则表达式,则每次匹配分隔符时,捕获括号的结果(包括任何未定义的结果)将被拼接到输出数组中。但是,并非所有浏览器都支持此功能。 (https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/split # Capturing_parentheses)