🔥
JavaScriptで特定文字以降を削除 (substring,indexOf)
特定文字以降を削除
const person = "山田太郎(20才)"
例: "山田太郎(20才)"という文字列から年齢を排除して、名前だけを取り出したい時。
ってことでそれを可能にするのが以下のコード↓
const person = "山田太郎(20才)"
person.substring(0, person.indexOf("("))
// 山田太郎
substring
とindexOf
というメソッドを使用して可能にしています。
substring
基本的な使い方
substring(開始[, 終了])
substring
は開始位置から終了位置までの間を取得するメソッド。
例
const person = "山田太郎(20才)"
person.substring(0.2)
// 山田
上記のコードでは文字列の0番目から2番目までを取得しています。
ちなみに終了位置は省略可能です。その場合、開始位置以降の文字列を取得します。
indexOf
- 指定された値が最初に現れたインデックスを返します。
"太"のインデックスを返す
const person = "山田太郎(20才)"
person.indexOf("太")
// 2
みたいな感じです。
以降を削除
上記で説明したsubstring
とindexOf
というメソッドを使用して
特定文字以降を削除を可能にしています。
改めて解説すると
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
person.substring(0.2)なんですが、ここは0.2ではなく0,2じゃないでしょうか?。間違ってたらごめんなさい。