split()方法
split()方法用于根据指定的分隔符将一个字符串分割成字符串数组,其分割后的字符串数组中不包括分隔符。当分隔符不只一个时,需要定义正则对象才能够完成字符串的分割操作。使用方法如下。
(1)按照规则分割
下面的示例演示了如何按照字符串中的“@”和“.”两种分隔符进行分割。
var str = 'test@123.com';
var reg = /[@\.]/;
var split_res = str.split(reg);
console.log(split_res); // 输出结果:(3) ["test", "123", "com"]
从上述代码可知,split()方法的参数为正则表达式模式设置的分隔符,返回值是以数组形式保存的分割后的结果。需要注意的是,当字符串为空时,split()方法返回的是一个包含一个空字符串的数组“[""]”,如果字符串和分隔符都是空字符串,则返回一个空数组“[]”。
(2)指定分割次数
在使用正则匹配方式分割字符串时,还可以指定字符串分割的次数,具体示例如下。
var str = 'We are a family';
var reg = /\s/;
var split_res = str.split(reg, 2);
console.log(split_res); // 输出结果:(2) ["We", "are"]
从上述代码可知,当指定字符串分割次数后,若指定的次数小于实际字符串中符合规则分割的次数,则最后的返回结果中会忽略其他的分割结果。