【Java】文字列のエスケープシーケンス
このページでは、Javaで使用される文字列のエスケープシーケンスについて詳しく解説します。
目次
エスケープシーケンスとは?
エスケープシーケンスとは、文字列内で特殊な文字や機能を表現するための文字列の形式です。Javaでは、\
(バックスラッシュ) を使用してエスケープを指定します。
例えば、改行を表す\n
や、タブを表す\t
などがあります。
よく使われるエスケープシーケンス
以下は、Javaでよく使われるエスケープシーケンスの一覧です。
\n
: 改行\t
: 水平タブ\\
: バックスラッシュ\'
: シングルクォート\"
: ダブルクォート\r
: 復帰 (キャリッジリターン)\b
: バックスペース\f
: 改ページ\uXXXX
: Unicode文字 (例:\u3053
は「こ」)
エスケープシーケンスの具体例
エスケープシーケンスを使ったJavaの例を示します。
public class EscapeSequenceExample {
public static void main(String[] args) {
// 改行
System.out.println("こんにちは\n世界!");
// タブ
System.out.println("Java\tプログラミング");
// バックスラッシュ
System.out.println("ファイルパス: C:\\\\Users\\\\Example");
// ダブルクォート
System.out.println("彼は\"天才\"だと言われています。");
// Unicode文字
System.out.println("Unicode例: \\u3042 = あ");
}
}
エスケープシーケンスとMathJax
Java文字列内で数学表現を表現する場合、適切なエスケープが必要です。以下に例を示します。
public class MathJaxExample {
public static void main(String[] args) {
// 数式の例
System.out.println("数式: y = \\(ax^2 + bx + c\\)");
}
}
このコードでは、MathJax形式の数式をJavaの文字列内で表現するため、\\
を使って\(
と\)
をエスケープしています。
カスタムエスケープシーケンスの処理
Javaでは、カスタムエスケープシーケンスを使用することはできませんが、独自の処理を行うことでエスケープを模倣できます。
public class CustomEscape {
public static void main(String[] args) {
// 独自エスケープシーケンスの例
String text = "これは[改行]カスタムエスケープ[タブ]例です。";
text = text.replace("[改行]", "\\n").replace("[タブ]", "\\t");
System.out.println(text);
}
}
この例では、カスタム文字列 ([改行]
や [タブ]
) を標準のエスケープシーケンスに変換しています。
まとめ
Javaの文字列エスケープシーケンスを理解し適切に使用することで、特殊文字や文字列フォーマットを柔軟に制御できます。