概要 | splitとは(文字列を分割して配列にする) |
区切り文字 | カンマで区切る |
半角スペースで区切る | |
タブで区切る | |
スラッシュで区切る | |
改行で区切る | |
ドットで区切る | |
空文字で区切る(1文字ずつ配列にする) | |
末尾が区切り文字の時、最後は要素になる? | |
正規表現 | 正規表現で区切り文字をORで指定 |
2つ目の引数 | 取得する要素数を指定 |
splitとは(文字列を分割して配列にする)
分割したい文字列.split ([区切り文字 or 正規表現 [ , 数値] ] ); |
- splitは、文字列を分割して配列を返します。
- 1つ目の引数は、区切り文字の場合は、文字列を区切り文字で区切ります。
正規表現の場合は、文字列を正規表現で区切ります。 - 2つ目の引数の数値は、分割する数を指定します。省略可能です。
カンマで区切る
function testScript() {
const str1 = "赤,黄,青";
const c1 = str1.split(",");
for (let i = 0; i < c1.length; i++) {
console.log(c1[i]); // 赤 黄 青が出力される
}
console.log(c1); //['赤', '黄', '青']
}
3行目は、文字列をカンマ区切りで配列にしています。
半角スペースで区切る
function testScript() {
const str1 = "赤 黄 青";
const c1 = str1.split(/\s/);
for (let i = 0; i < c1.length; i++) {
console.log(c1[i]); // 赤 黄 青が出力される
}
console.log(c1); //['赤', '黄', '青']
}
3行目は、文字列を半角スペースで区切って配列にしています。(バックスラッシュ(円記号)+S)
タブで区切る
function testScript() {
const str1 = "赤 黄 青";
const c1 = str1.split(/\t/);
for (let i = 0; i < c1.length; i++) {
console.log(c1[i]); // 赤 黄 青が出力される
}
console.log(c1); //['赤', '黄', '青']
}
3行目は、文字列をタブで区切って配列にしています。(バックスラッシュ(円記号)+t)
スラッシュで区切る
function testScript() {
const str1 = "2020/05/21";
const c1 = str1.split("/");
for (let i = 0; i < c1.length; i++) {
console.log(c1[i]); // 2020 05 21
}
console.log(c1); //["2020", "05", "21"]
}
区切り文字は、文字としてのスラッシュを指定します。
改行で区切る
function testScript() {
const str1 = "赤と黄\r\n青と緑";
const c1 = str1.split(/\r\n|\n/);
for (let i = 0; i < c1.length; i++) {
console.log(c1[i]); // 赤と黄 青と緑
}
console.log(c1); //['赤と黄', '青と緑']
}
\r\nは復帰改行(CRLF)、\nは改行(LF)です。パイプ(|)は正規表現でorを意味します。
ドットで区切る
function testScript() {
const str1 = "test.txt";
const c1 = str1.split(".");
for (let i = 0; i < c1.length; i++) {
console.log(c1[i]); // test txt
}
console.log(c1); //['test', 'txt']
}
区切り文字は、文字としてのドットを指定します。
空文字で区切る(1文字ずつ配列にする)
function testScript() {
const str1 = "あいうえお";
const c1 = str1.split("");
console.log(c1); //['あ', 'い', 'う', 'え', 'お']
}
splitメソッドの引数が空文字の場合、1文字ずつの配列になります。
末尾が区切り文字の時、最後は要素になる?
function testScript() {
const str1 = "a,b,c,,";
const c1 = str1.split(",");
console.log(c1); //['a', 'b', 'c', '', '']
}
2行目は、末尾がカンマで終わっています。
splitの引数にカンマ(',')を指定した場合、空文字も要素として取得します。
5行目は、aとbとcと空文字2つ('')が表示されています。
正規表現で区切り文字をORで指定
function testScript() {
const str1 = "あ,い:う,え";
const c1 = str1.split(/[,:]/);
console.log(c1); // ['あ', 'い', 'う', 'え']
}
3行目の[,:]は、カンマ(,)またはコロン(:)という正規表現です。
取得する要素数を指定
function testScript() {
const str1 = "あ,い,う,え";
const c1 = str1.split(",",2);
console.log(c1); // ['あ', 'い']
}
3行目は、2つ目の引数が2なので戻りの配列の要素数は2つです。
関連の記事