【Java】startsWithとendsWithで文字列が特定の文字列で始まるのか終わるのかを調べる!
文字列が特定の文字列で始まるかどうかを調べるにはstartsWith、文字列が特定の文字列で終わるかどうかを調べるにはendsWithを使用します。
文字列が指定した引数で始まっている場合はtrueを返し、それ以外の場合はfalseを返します。
また、文字列が指定した引数で終わっている場合もtrueを返し、それ以外の場合はfalseを返します。
今回はstartsWithメソッドとendsWithメソッドを使って以下の場合について調べてみます。
⚫︎ 文字列が特定の文字列で始まるかを判定する場合(アルファベット、漢字、全角、半角、空文字)
⚫︎ 文字列が特定の文字列で終わるかを判定する場合(アルファベット、漢字、全角、半角、空文字)
目次
startsWithメソッドとは
startsWithメソッドとは文字列が特定の文字列で始まるかどうかを調べることができるメソッドとなります。
startsWithメソッドの書き方
startsWithメソッドの構文は下記となります。
1 |
文字列.startsWith("判定文字") |
()の引数の判定文字を指定することで、指定した判定文字が文字列の始まりであるかどうかを調べます。
指定した文字列が文字列の始まりであるならtrue、違うならfalseを返します。
また、半角全角、大文字小文字は別の文字列として認識されます。
endsWithメソッドとは
endsWithメソッドとは文字列が特定の文字列で終わるかどうかを調べることができるメソッドとなります。
endsWithメソッドの書き方
endsWithメソッドの構文は下記となります。
1 |
文字列.endsWith("判定文字") |
()の引数の判定文字を指定することで、指定した判定文字が文字列の終わりであるかどうかを調べます。
指定した文字列が文字列の終わりであるならtrue、違うならfalseを返します。
また、こちらも半角全角、大文字小文字は別の文字列として認識されます。
文字列が特定の文字列で始まるかを調べるサンプルコード
文字列が特定の文字列で始まるかを調べるサンプルコードを紹介します。
アルファベットで始まる場合
例
1 2 3 4 5 6 7 8 9 10 11 12 13 |
// 文字列が特定の文字列で始まるかを調べる public class Main { public static void main(String[] args) throws Exception { // 特定の文字列が接頭語か調べて判定結果を表示する // アルファベットでの判定 String str = "Java"; System.out.println("判定対象文字列:" + str); System.out.println("「J」の判定結果:" + str.startsWith("J")); System.out.println("「j」の判定結果:" + str.startsWith("j")); } } |
出力結果
判定対象文字列:Java
「J」の判定結果:true
「j」の判定結果:false
判定文字がアルファベット大文字、小文字の場合は区別されて判定されます。
漢字で始まる場合
例
1 2 3 4 5 6 7 8 9 10 11 12 13 |
// 文字列が特定の文字列で始まるかを調べる public class Main { public static void main(String[] args) throws Exception { // 特定の文字列が接頭語か調べて判定結果を表示する // 漢字での判定。 String str = "電子辞書"; System.out.println("判定対象文字列:" + str); System.out.println("「電」の判定結果:" + str.startsWith("電")); System.out.println("「子」の判定結果:" + str.startsWith("子")); } } |
出力結果
判定対象文字列:電子辞書
「電」の判定結果:true
「子」の判定結果:false
全角、半角、空文字で始まる場合
例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
// 文字列が特定の文字列で始まるかを調べる public class Main { public static void main(String[] args) throws Exception { // 特定の文字列が接頭語か調べて判定結果を表示する // 全角、半角、空文字での判定 String str = "ノートブック"; System.out.println("判定対象文字列:" + str); System.out.println("「ノ」の判定結果:" + str.startsWith("ノ")); System.out.println("「ノ」の判定結果:" + str.startsWith("ノ")); System.out.println("「」の判定結果:" + str.startsWith("")); } } |
出力結果
判定対象文字列:ノートブック
「ノ」の判定結果:true
「ノ」の判定結果:false
「」の判定結果:true
判定文字が全角と半角の場合は区別されて判定されます。
また、判定文字の空白文字の場合はtrueを返しています。
文字列が特定の文字列で終わるかを調べるサンプルコード
文字列が特定の文字列で終わるかを調べるサンプルコードを紹介します。
アルファベットで終わる場合
例
1 2 3 4 5 6 7 8 9 10 11 12 13 |
// 文字列が特定の文字列で終わるかを調べる public class Main { public static void main(String[] args) throws Exception { // 特定の文字列が接頭語か調べて判定結果を表示する // アルファベットでの判定 String str = "Java"; System.out.println("判定対象文字列:" + str); System.out.println("「A」の判定結果:" + str.endsWith("A")); System.out.println("「a」の判定結果:" + str.endsWith("a")); } } |
出力結果
判定対象文字列:Java
「A」の判定結果:false
「a」の判定結果:true
判定文字がアルファベット大文字、小文字の場合は区別されて判定されます。
漢字で終わる場合
例
1 2 3 4 5 6 7 8 9 10 11 12 13 |
// 文字列が特定の文字列で終わるかを調べる public class Main { public static void main(String[] args) throws Exception { // 特定の文字列が接頭語か調べて判定結果を表示する // 漢字での判定。 String str = "電子辞書"; System.out.println("判定対象文字列:" + str); System.out.println("「書」の判定結果:" + str.endsWith("書")); System.out.println("「辞」の判定結果:" + str.endsWith("辞")); } } |
出力結果
判定対象文字列:電子辞書
「書」の判定結果:true
「辞」の判定結果:false
全角、半角、空文字で終わる場合
例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
// 文字列が特定の文字列で終わるかを調べる public class Main { public static void main(String[] args) throws Exception { // 特定の文字列が接頭語か調べて判定結果を表示する // 全角、半角、空文字での判定 String str = "ノートブック"; System.out.println("判定対象文字列:" + str); System.out.println("「ク」の判定結果:" + str.endsWith("ク")); System.out.println("「ク」の判定結果:" + str.endsWith("ク")); System.out.println("「」の判定結果:" + str.endsWith("")); } } |
出力結果
判定対象文字列:ノートブック
「ク」の判定結果:true
「ク」の判定結果:false
「」の判定結果:true
判定文字が全角と半角の場合は区別されて判定されます。
また、判定文字の空白文字の場合はtrueを返しています。
今回のポイント
startsWithメソッドで特定の文字列で始まるか確認
文字列が特定の文字列で始まるか調べるにはstartsWithメソッドを使用する
⚫︎ startsWithメソッドで、パラメータに指定した文字列が接尾語かどうか判定することができる。
⚫︎ 判定文字が接頭語の場合は「true」、そうでない場合は「false」を返し、判定文字を空文字にした場合は、「true」を返す
⚫︎ startsWithメソッドは、全角と半角、大文字と小文字の違いも影響する
endsWithメソッドで特定の文字列で終わるか確認
文字列が特定の文字列で始まるか調べるにはendsWithメソッドを使用する
⚫︎ endsWithメソッドでパラメータに指定した文字列が接尾語かどうか判定することができる
⚫︎ 判定文字が接尾語の場合は「true」、そうでない場合は「false」返し、判定文字を空文字にした場合は「true」を返す
⚫︎ startsWithメソッド同様に全角と半角、大文字と小文字の違いも影響する
ST
株式会社flyhawkのSTです。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。