JavaScript: String.prototype.split
str.split(string_separator)
-
Split the string by separator. Example:
str.split(",")
.
Result is array. The separator is not included in result unless using regex arg with capture. str.split(regex)
-
Split the string by separator regex. Example:
str.split(/ +/)
. If regex contains capturing parentheses, the captured parts are included in result. str.split(sep, n)
- Return a Array of n items at most.
str.split()
- Return array of 1 element, the element is the whole string.
str.split("")
- Each char is array element. (Note: if the string contain character whose codepoint ≥ 2^16, such as emoji 😂, the result may be “wrong”.) [see JavaScript: String Code Unit]
String Separator Example
The separator eats the string.
"abcde".split("c"); // [ 'ab', 'de' ]
Repeated space in string may result empty string element in array.
console.log( ' a b c '.split (' ') ); // [ '', 'a', '', 'b', 'c', '' ]
Use filter
to remove empty string in array.
[see Array.prototype.filter]
Regex Separator Example
Using regex as separator.
const t3 = 'a b c'; console.log( t3.split (/ +/) ); // [ 'a', 'b', 'c' ]
Using regex with capture.
const t4 = 'a b c'; console.log( t4.split (/( +)/) ); // [ 'a', ' ', 'b', ' ', 'c' ]
[see RegExp Syntax]
Max Length Example
Limit max length.
const tt = `a b c`; console.log( tt.split ('\n',2) ); // [ 'a', 'b' ]
Other Example
Split by a character that doesn't exist, return full string
// split by a char that doesn't exist, returns full string console.log( "abc".split("-") ); // [ 'abc' ]