2024.08.16
エスケープシーケンス
はじめに
エスケープシーケンス(escape sequence)は、文字列で表せない特殊文字や機能を、特別な文字の並びにより表したものです。
¥(円マーク)または、/(バックスラッシュ)と文字の組み合わせで表現します。環境によって使い分けます。
代表的なエスケープシーケンス
表記 | 意味 |
---|---|
\a | ベル文字(アラート) |
\b | バックスペース |
\t | 水平タブ |
\v | 垂直タブ |
\n | 改行 |
\r | 復帰 |
\f | 改ページ |
\' | シングルコーテーション |
\" | ダブルコーテーション |
\0 | ヌル(Null) |
\\ | 文字としての¥ |
Javaソースコード
Escapesequence.java
001 002 003 004 005 006 007 008 009 010
public class Escapesequence { public static void main( String[] args ) { // 改行 System.out.println( "■改行" ); System.out.println( "あいうえお\nかきくけこ\nさしすせそ\n\n" ); // ダブルコーテーション System.out.println( "■ダブルコーテーション" ); System.out.println( "\"Hello World\"" ); } }
コンパイル ソースコードが「ANSI」の場合
C:\talavax\javasample>javac -encoding sjis Escapesequence.java
コンパイル ソースコードが「UTF-8」の場合
C:\talavax\javasample>javac Escapesequence.java
実行
C:\talavax\javasample>java Escapesequence
■改行 あいうえお かきくけこ さしすせそ ■ダブルコーテーション "Hello World"
System.out.println( "あいうえお\nかきくけこ\nさしすせそ\n\n" );の出力では”\n”で改行が行われ、System.out.println( "\"Hello World\"" );の出力では”¥"”でダブルコーテーションが表示されることがわかります。
このソースコードでは、コンソール出力にSystem.out.printlnを使っています。printlnは指定した文字列を出力後に改行するので”\n”を文字列の最後に付けなくても改行されます。
System.out.println( "あいうえお\nかきくけこ\nさしすせそ\n\n" );をprintで書くと文字列の最後に”\n”を付けたSystem.out.print( "あいうえお\nかきくけこ\nさしすせそ\n\n\n" );となります。
Escapesequence2.java
001 002 003 004 005 006 007 008 009 010
public class Escapesequence2 { public static void main( String[] args ) { // 改行 System.out.println( "■改行" ); System.out.print( "あいうえお\nかきくけこ\nさしすせそ\n\n\n" ); // ダブルコーテーション System.out.println( "■ダブルコーテーション" ); System.out.println( "\"Hello World\"" ); } }
コンパイル ソースコードが「ANSI」の場合
C:\talavax\javasample>javac -encoding sjis Escapesequence2.java
コンパイル ソースコードが「UTF-8」の場合
C:\talavax\javasample>javac Escapesequence2.java
実行
C:\talavax\javasample>java Escapesequence2
■改行 あいうえお かきくけこ さしすせそ ■ダブルコーテーション "Hello World"
printで出力している行のSystem.out.print( "あいうえお\nかきくけこ\nさしすせそ\n\n" );をprintfで書くと文字列の最後に”\n”を付けたSystem.out.println( "あいうえお\nかきくけこ\nさしすせそ\n\n\n" );となります。
public class Escapesequence { public static void main( String[] args ) { // 改行 System.out.println( "■改行" ); System.out.println( "あいうえお\nかきくけこ\nさしすせそ\n\n" ); // ダブルコーテーション System.out.println( "■ダブルコーテーション" ); System.out.println( ""Hello World"" ); } }