JavaScriptの文字列の先頭・末尾を確認する方法(startsWith, endsWith)
生徒
「先生、JavaScriptで文字列の最初や最後が特定の文字や単語かどうか調べる方法ってありますか?」
先生
「はい、JavaScriptにはstartsWithとendsWithというメソッドがあります。文字列の先頭や末尾を簡単に確認できる便利なメソッドです。」
生徒
「具体的にどうやって使うんですか?」
先生
「では基本的な使い方から順に説明しますね!」
1. startsWithメソッドで文字列の先頭を確認する
startsWithは、文字列の先頭が指定した文字列と一致するかどうかを確認するためのメソッドです。
戻り値はtrueかfalseの論理値(ブール値)で返されます。
例えば、ユーザー名が特定の文字で始まるかをチェックする場合などに便利です。
const username = "AdminUser";
console.log(username.startsWith("Admin")); // true
console.log(username.startsWith("User")); // false
true
false
上の例では、文字列"AdminUser"が"Admin"で始まるかを確認しています。
先頭が一致すればtrue、そうでなければfalseが返ります。
2. endsWithメソッドで文字列の末尾を確認する
endsWithは、文字列の末尾が指定した文字列と一致するかどうかを確認するためのメソッドです。
こちらもtrueかfalseで返されます。
例えば、ファイル名が特定の拡張子で終わっているかをチェックするときに使えます。
const filename = "report.pdf";
console.log(filename.endsWith(".pdf")); // true
console.log(filename.endsWith(".txt")); // false
true
false
このようにendsWithを使うと、文字列の末尾が指定した内容かどうか簡単に判断できます。
3. 文字列の一部からチェックする
startsWithとendsWithは、オプションで文字列の開始位置や長さを指定することもできます。
startsWithでは、第2引数にチェックを開始する位置を指定できます。
const text = "Hello, JavaScript!";
console.log(text.startsWith("Java", 7)); // true
true
上の例では、文字列の7文字目から"Java"で始まるかを確認しています。
このように、文字列全体ではなく任意の位置から確認できるのも便利です。
endsWithはオプションで文字列の長さを指定することができます。
指定した長さまでの文字列の末尾が一致するかを確認できます。
const text2 = "presentation.pptx";
console.log(text2.endsWith(".ppt", 12)); // true
true
この例では、最初の12文字"presentation"の末尾が".ppt"かをチェックしています。
4. startsWithとendsWithを使うメリット
- 文字列の先頭や末尾を簡単にチェックできるので条件分岐に便利。
- 正規表現を使わなくても直感的に理解できる。
- ファイル拡張子の判定やユーザー名チェックなど実用的な場面で使いやすい。
5. 注意点
startsWithとendsWithは大文字・小文字を区別します。
もし大文字・小文字を無視して判定したい場合は、toLowerCase()やtoUpperCase()で統一してからチェックすると良いです。
const word = "JavaScript";
console.log(word.toLowerCase().startsWith("java")); // true
true
これで、大文字・小文字の違いによる誤判定を避けることができます。