JavaScriptで文字列を切り出し

2021-06-18

substring(), substr(), slice(), の使い方

JavaScriptで文字列から文字列を抽出する時、いつも調べなおしていたので、まとめておきます。
できるだけ簡潔に記載します。

  1. substring():開始位置から・終了位置手前まで
  2. slice():開始位置から・終了位置手前まで(マイナスは後ろから)
  3. substr():開始位置から指定文字数分

1. substring():開始位置から・終了位置手前まで

str.substring(a, b)で、strのa文字目から(b-1)文字目までを切り出します。
bを指定しなければ、a文字目から残り全部を切り出します。

コード

let str="2021/03/12 12:13:14";

console.log(str.substring(0, 10));//0-10文字目
console.log(str.substring(5, 10));//5-10文字目
console.log(str.substring(11, 19));//11-19文字目
console.log(str.substring(11));//11文字目以降

結果

2021/03/12
03/12
12:13:14
12:13:14

参考:MDN Web Docs

2. slice():開始位置から・終了位置手前まで(マイナスは後ろから)

str.slice(a, b)で、strのa文字目から(b-1)文字目までを切り出します。
bを指定しなければ、a文字目から残り全部を切り出します。
上記はsubstringと同じですが、マイナスの引数により、後ろから何文字目かを指定できます

コード

let str="2021/03/12 12:13:14";

console.log(str.slice(5, 10));//5-10文字目
console.log(str.slice(11));//11文字目以降
console.log(str.slice(-8));//後ろから8文字目以降
console.log(str.slice(-8,-3));//後ろから8文字目 から 後ろから3文字目

結果

03/12
12:13:14
12:13:14
12:13

参考:MDN Web Docs

3. substr():開始位置から指定文字数分

str.substr(a, b)で、strのa文字目からb文字数分切り出します。
bを指定しなければ、a文字目から残り全部を切り出します。

コード

let str="2021/03/12 12:13:14";

console.log(str.substr(0, 4));//0文字目から4文字
console.log(str.substr(11));//11文字目以降

結果

2021
12:13:14

参考:MDN Web Docs