🔥

JavaScriptで特定文字以降を削除 (substring,indexOf)

2020/11/22に公開1

特定文字以降を削除

const person = "山田太郎(20才)"

例: "山田太郎(20才)"という文字列から年齢を排除して、名前だけを取り出したい時。

ってことでそれを可能にするのが以下のコード↓

const person = "山田太郎(20才)"
person.substring(0, person.indexOf("("))
// 山田太郎

substringindexOfというメソッドを使用して可能にしています。

substring

基本的な使い方
substring(開始[, 終了])

substringは開始位置から終了位置までの間を取得するメソッド。

const person = "山田太郎(20才)"
person.substring(0.2)
// 山田

上記のコードでは文字列の0番目から2番目までを取得しています。

ちなみに終了位置は省略可能です。その場合、開始位置以降の文字列を取得します。

substringメソッドもっと詳しくしりたい方はこちら

indexOf

  • 指定された値が最初に現れたインデックスを返します。
"太"のインデックスを返す
const person = "山田太郎(20才)"
person.indexOf("太")
// 2

みたいな感じです。

indexOfメソッドもっと詳しくしりたい方はこちら

以降を削除

上記で説明したsubstringindexOfというメソッドを使用して
特定文字以降を削除を可能にしています。
改めて解説すると

const person = "山田太郎(20才)"
person.substring(0, person.indexOf("("))
// 山田太郎

substringでpersonの0番目からperson.indexOf("(")番目までを取得しているということです。
もっと言えば、person.indexOf("(")=5 になるので
実質こんな感じになります。

const person = "山田太郎(20才)"
person.substring(0, 5)
// 山田太郎

まとめ

javascript 以降削除

で検索した時にヒットしたやり方ですが、
あまり詳しい解説がなく、なんとなく使っていたので
ちゃんと調べて記事にしてみました。笑

Discussion

Ritorick0925Ritorick0925

person.substring(0.2)なんですが、ここは0.2ではなく0,2じゃないでしょうか?。間違ってたらごめんなさい。