【JavaScript】spiltメソッドで文字列から配列を生成する方法

この記事ではJavaScriptの『spilt()メソッド』について、

  • spilt()メソッドとは
  • spilt()メソッドの構文
  • split()メソッドの使い方
  • split()メソッドの特徴

などをサンプルコードを用いて分かりやすく説明するように心掛けています。ご参考になれば幸いです。

spilt()メソッドとは

spilt()メソッドは文字列から配列を生成するメソッドです。spilt()メソッドは、指定された区切り文字(separator)を使って文字列を分割し、結果を配列として返します。

spilt()メソッドの構文を以下に示します。

spilt()メソッドの構文

str.split([separator[, limit]])
  • separator(省略可能)
    • spilt()メソッドは文字列が指定された区切り文字(separator)によって分割された配列を返します。
    • 区切り文字には「文字列」や「正規表現」などを使用可能することができます。
    • 省略可能です。
    • separatorを省略した場合、あるいはundefinedを指定した場合、元の文字列strが1つの要素とする配列を返します。
  • limit(省略可能)
    • spilt()メソッドで分割する上限です。
    • limit0を指定した場合には、[]を返します。
    • 省略可能です。

では実際にサンプルコードを用いてsplit()メソッドの使い方を説明します。

split()メソッドの使い方

split()メソッドについて、以下の使用例について説明します。

  • 文字列を「空白」で分割する場合
  • 文字列を「カンマ(,)」で分割する場合
  • 区切り文字に「空文字("")」を用いた場合
  • 区切り文字に「正規表現」を用いた場合
  • limitパラメータを使用した場合

各使用例について順番に説明します。

文字列を「空白」で分割する場合

以下のサンプルコードでは、「空白文字(" ")」を区切り文字として使用しています。

const data = 'Hello World';
const result = data.split(' ');
console.log(result);
// ログ出力
// [ 'Hello', 'World' ]

文字列を「カンマ(,)」で分割する場合

以下のサンプルコードでは、「カンマ(,)」を区切り文字として使用しています。

const data = 'apple,banana,cherry';
const result = data.split(',');
console.log(result);
// ログ出力
// [ 'apple', 'banana', 'cherry' ]

区切り文字に「空文字("")」を用いた場合

区切り文字に「空文字("")」を使用すると、文字列が個々の文字に分割されます。

const data = 'hello';
const result = data.split('');
console.log(result);
// ログ出力
// [ 'h', 'e', 'l', 'l', 'o' ]

区切り文字に「正規表現」を用いた場合

区切り文字に正規表現を使用することもできます。以下のサンプルコードでは、「1つ以上の数字が続く部分」を区切り文字として文字列を分割しています。

const data = 'foo123bar';
const result = data.split(/\d+/);
console.log(result);
// ログ出力
// ["foo", "bar"]
  • / は正規表現の開始を示しています。
  • \d は任意の数字を表す特殊文字です。
  • + は直前のパターン(\d)が1回以上繰り返されることを示しています。\d+は1つ以上の数字が続く部分となります。
  • / は正規表現の終了を示しています。

limitパラメータを使用した場合

以下のサンプルコードでは、「カンマ(,)」で文字列を分割し、最初の2つの単語のみを配列に含めています。

const data = 'apple,banana,cherry';
const result = data.split(',', 2);
console.log(result);
// ログ出力
// [ 'apple', 'banana' ]

spilt()メソッドの特徴

spilt()メソッドの特徴を以下に示します。

  • 区切り文字を省略すると、呼び出し元の文字列を 1つの要素とする配列を返す
  • 区切り文字にundefinedを渡すと、呼び出し元の文字列を 1つの要素とする配列を返す
  • limitパラメータに0を指定した場合には、[]を返す
  • 元の文字列が「空文字列」でセパレータが「空文字列」でない場合には、1 つの空文字列を含む配列を返す
  • 元の文字列とセパレーターがともに「空文字列」の場合には、[]を返す

各特長について順番に説明します。

区切り文字を省略すると、呼び出し元の文字列を 1つの要素とする配列を返す

区切り文字(separator)を省略した場合には、元の文字列を 1つの要素とする配列を返します。

const data = 'hello';
const result = data.split();
console.log(result);
// ログ出力
// [ 'hello' ]

区切り文字にundefinedを渡すと、呼び出し元の文字列を 1つの要素とする配列を返す

区切り文字(separator)にundefinedを渡した場合には、元の文字列を 1つの要素とする配列を返します。

const data = 'hello';
const result = data.split(undefined);
console.log(result);
// ログ出力
// [ 'hello' ]

limitパラメータに0を指定した場合には、[]を返す

limitパラメータに0を指定した場合には、[]を返します。

const data = 'apple,banana,cherry';
const result = data.split(',', 0);
console.log(result);
// ログ出力
// []

元の文字列が「空文字列」でセパレータが「空文字列」でない場合には、1 つの空文字列を含む配列を返す

元の文字列が「空文字列」でセパレータが「空文字列」でない場合には、1 つの空文字列を含む配列を返します。

const data = '';
const result = data.split(',');
console.log(result);
// ログ出力
// [ '' ]

元の文字列とセパレーターがともに「空文字列」の場合には、[]を返す

元の文字列とセパレーターがともに「空文字列」の場合には、[]を返します。

const data = '';
const result = data.split('');
console.log(result);
// ログ出力
// []

本記事のまとめ

この記事ではJavaScriptの『spilt()メソッド』について、以下の内容を説明しました。

  • spilt()メソッドとは
  • spilt()メソッドの構文
  • split()メソッドの使い方
  • split()メソッドの特徴

お読み頂きありがとうございました。