概要: このチュートリアルでは、JavaScript の substring()
メソッドを使用して文字列からサブ文字列を抽出する方法を学習します。
JavaScript substring() メソッドの紹介
JavaScript の String.prototype.substring()
は、開始インデックスと終了インデックスの間の 文字列 の一部を返します。
str.substring(startIndex [, endIndex])
Code language: JavaScript (javascript)
substring()
メソッドは 2 つのパラメーターを受け取ります。startIndex
と endIndex
startIndex
は返されるサブ文字列に含める最初の文字のインデックスを指定します。endIndex
は返されるサブ文字列から最初に除外する文字を決定します。言い換えると、返されるサブ文字列には endIndex の文字が含まれません。
endIndex
を省略した場合、substring()
は文字列の最後までサブ文字列を返します。
startIndex
が endIndex
と等しい場合、substring()
メソッドは空の文字列を返します。
startIndex
が endIndex
より大きい場合、substring()
はそれらの役割を交換します。startIndex が endIndex になり、その逆も同様です。
startIndex
または endIndex
のいずれかが 0 未満または string.length
より大きい場合、substring()
はそれぞれ 0 または string.length
とみなします。
いずれかのパラメーターが NaN
の場合、substring()
はそれらを 0 であるかのように扱います。
JavaScript substring() の例
JavaScript の substring()
メソッドの使用例をいくつか取り上げてみましょう。
1) 文字列の先頭からサブ文字列を抽出する例
次の例では substring メソッドを使用して、文字列の先頭から始まるサブ文字列を抽出します。
let str = 'JavaScript Substring';
let substring = str.substring(0,10);
console.log(substring);
Code language: JavaScript (javascript)
出力
JavaScript
Code language: JavaScript (javascript)
2) 文字列の最後までサブ文字列を抽出する例
次の例では substring() を使用して、インデックス 11 から文字列の最後までサブ文字列を抽出します。
let str = 'JavaScript Substring';
let substring = str.substring(11);
console.log(substring);
Code language: JavaScript (javascript)
出力
Substring
Code language: JavaScript (javascript)
3) メールからドメインを抽出する例
次の例では、メールからドメインを抽出するために substring()
と indexOf()
を使用します。
let email = '[email protected]';
let domain = email.substring(email.indexOf('@') + 1);
console.log(domain); // gmail.com
Code language: JavaScript (javascript)
仕組み
- 最初に、
indexOf()
は @ 文字の位置を返します。 - 次に、substring は @ のインデックスから 1 増やした部分から文字列の最後まで始まるドメインを返します。
まとめ
- JavaScript の
substring()
は、開始インデックスと終了インデックスの間の文字列からサブ文字列を返します。