跳到主要内容

JavaScript 字符串 split() 方法

split() 方法将字符串分割成子字符串列表,并将它们作为数组返回。

示例

const message = "JavaScript::is::fun";

// 在 "::" 处分割 message 字符串
let result = message.split("::");
console.log(result);

// 输出:[ 'JavaScript', 'is', 'fun' ]

split() 语法

split() 的语法为:

str.split(separator, limit);

这里,str 是一个字符串。

split() 参数

split() 方法接受:

  • separator(可选)- 描述每次分割应发生在哪里的模式(字符串或正则表达式)。
  • limit(可选)- 一个非负整数,限制分割给定字符串的部分数量。

split() 返回值

  • 返回一个字符串数组,每个字符串是在给定字符串中分隔符出现处分割的。

注意: split() 方法不会更改原始字符串。

示例:使用 split()

console.log("ABCDEF".split("")); // [ 'A', 'B', 'C', 'D', 'E', 'F' ]

const text = "Java is awesome. Java is fun.";

let pattern = ".";
let newText = text.split(pattern);
console.log(newText); // [ 'Java is awesome', ' Java is fun', '' ]

let pattern1 = ".";
// 仅将字符串最多分割为两部分
let newText1 = text.split(pattern1, 2);
console.log(newText1); // [ 'Java is awesome', ' Java is fun' ]

const text2 = "JavaScript ; Python ;C;C++";
let pattern2 = ";";
let newText2 = text2.split(pattern2);
console.log(newText2); // [ 'JavaScript ', ' Python ', 'C', 'C++' ]

// 使用正则表达式
let pattern3 = /\s*(?:;|$)\s*/;
let newText3 = text2.split(pattern3);
console.log(newText3); // [ 'JavaScript', 'Python', 'C', 'C++' ]

输出

["A", "B", "C", "D", "E", "F"][("Java is awesome", " Java is fun", "")][
("Java is awesome", " Java is fun")
][("JavaScript ", " Python ", "C", "C++")][
("JavaScript", "Python", "C", "C++")
];

注意: 如果分隔符是带有捕获括号的正则表达式,那么每次分隔符匹配时,捕获括号的结果会被插入输出数组中。

推荐阅读: JavaScript Array join()