【Java】エスケープシーケンスの使い方とは【サンプル有り】
  • facebookページ
  • twitterページ
  • 2021.04.30

    【Java】エスケープシーケンスの使い方とは【サンプル有り】

    Javaで特殊文字を表現する際、エスケープシーケンスを利用する必要があります。

    本記事では、Javaを学習中の初心者向けにエスケープシーケンスの使い方をサンプルコードを掲載しながらご紹介していきます。

    エスケープシーケンスとは


    エスケープシーケンスは、文字をそのままの文字列として解釈するのではなく、タブや改行をはじめとした文字出力制御を行うための特殊文字のことを指します。

    使用方法

    Javaでのエスケープシーケンスは「\(バックスラッシュ)」と何らかの文字列を組み合わせることで、文字列中のデータを特殊な文字として解釈することが可能となります。

    例えばJavaでは文字列を表現する際に「”(ダブルクォーテーションマーク)」を使用するため、ダブルクォーテーションマークをそのまま記述すると文字列の始まりまたは終わりと解釈されてしまいます。

    もし文字列の中でダブルクォーテーションマークをそのまま出力したい場合には「\”」と記述することで、「”」ダブルクォーテーションマークのまま文字列として出力することが可能です。

    ポテパンダの一言メモ

    Mac環境を想定した解説です。
    Windows環境などでは「¥」マークが利用されるため読み替えが必要です。

    エスケープシーケンスの代表例

    Javaで良く利用されるエスケープシーケンスの代表例をご紹介します。

    エスケープシーケンスの代表例
    • \n : 改行
    • \t : タブ
    • \’ : シングルクォーテーション
    • \” : ダブルクォーテーション
    • \\ : バックスラッシュ
    • \xxx : 8進数の文字コード
    • \uxxx : 16進数の文字コード

    Javaでエスケープシーケンスを使用したサンプル


    では実際に代表例としてご紹介したエスケープシーケンスを使用したサンプルコードを確認してみましょう。

    改行

    実行結果

    「\n」は改行文字として判定されますが、バックスラッシュを付けない場合そのまま「n」と出力されています。

    タブ

    実行結果

    シングルクォーテーション

    実行結果

    Javaでは文字列はダブルクォーテーションで囲みますが、文字リテラルの場合シングルクォーテーションで囲って表現します。

    ただし「’」を文字リテラルとして出力したい場合には、上記のようにエスケープシーケンスを利用しないとエラーとなるため注意が必要です。

    ダブルクォーテーション

    実行結果

    シングルクォーテーションと同じように、文字列中にダブルクォーテーションマークを表示したい場合エスケープシーケンスが必要です。

    バックスラッシュ

    実行結果

    8進数の文字コード

    実行結果

    エスケープシーケンスを使用すると対応する文字コードに変換されて出力されます。

    16進数の文字コード

    実行結果

    16進数で指定する場合にはバックスラッシュの直後に「u」を指定します。

    Javaの正規表現でエスケープシーケンスを使う


    Javaプログラムにおいて、エスケープシーケンスを利用する機会の多い正規表現についても確認しておきましょう。

    正規表現の特殊文字

    まず正規表現のなかで頻繁に利用される特殊文字を一覧で掲載します。

    正規表現の特殊文字
    • 「.」: 任意の1文字
    • 「*」: 直前の1文字を繰り返し(0回以上)
    • 「^」: 行の先頭
    • 「$」: 行の末尾
    • 「?」: 直前の文字と一致またはなし

    正規表現でエスケープシーケンスを使ったサンプル

    メタ文字が含まれる場合エスケープシーケンスを利用することになります。

    実行結果

    正規表現の場合「.」は任意の1文字となるため「regex1」には「str1」も「str2」も一致することになります。

    ただし「regex2」ではエスケープシーケンスを指定しているため文字列で「あい.えお」のみが一致します。

    結果、サンプルのように「regex2」と「str1」の組み合わせはエラーとなりました。

    ポテパンダの一言メモ

    サンプルでは「.」を使用していますが、他の特殊文字でも同じようにエスケープシーケンスが必要です。

    さいごに: Javaでのエスケープシーケンスの使い方を把握しておこう


    本記事では、Javaプログラミングで特殊文字を表現するために利用するエスケープシーケンスの使い方をご紹介してきました。

    エスケープシーケンスが必要な場面は意外と多いため、プログラミング学習を進めるうちに何度も対応する必要があり、自然と使えるようになっていきます。

    最初から全てを覚える必要はないため、エスケープシーケンスの概念を理解した上で必要に応じて検索しながら使いこなせるように学習を進めていきましょう。



    優良フリーランス案件多数掲載中!
    フリーランスエンジニアの案件をお探しなら
    ポテパンフリーランス

    この記事をシェア

    • Facebookシェア
    • Twitterシェア
    • Hatenaシェア
    • Lineシェア
    pickup









    ABOUT US

    ポテパンはエンジニアと企業の最適なマッチングを追求する企業です。

    READ MORE