如何在 Java 中取消轉義 Java 字串文字?
Java 沒有提供用於取消轉義字串文字的簡單函數。此任務需要手動將字元轉義序列轉換為對應的字元。
常見字元轉義
Escape Sequence | Character |
---|---|
Backslash | |
n | Newline |
r | Carriage return |
t | Tab |
b | Backspace |
f | Form feed |
" | Double quote |
' | Single quote |
取消轉義字串文字
取消轉義字串文字的一種方法是使用迭代字串的自訂函數,識別轉義序列,並將其替換為適當的字元。
public static String unescape(String str) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < str.length(); i++) { char c = str.charAt(i); if (c == '\') { i++; switch (str.charAt(i)) { case 'n': sb.append('\n'); break; case 'r': sb.append('\r'); break; case 't': sb.append('\t'); break; case 'b': sb.append('\b'); break; case 'f': sb.append('\f'); break; case '\"': sb.append('\"'); break; case '\'': sb.append('\''); break; case '\': sb.append('\'); break; default: sb.append(c); // Unrecognized escape sequence } } else { sb.append(c); } } return sb.toString(); }
範例:
String original = "\\"Hello, World!\\""; String unescaped = unescape(original); System.out.println(unescaped); // Output: "Hello, World!"
字串取消轉義的函式庫
有些第三方函式庫還提供了對字串文字進行轉義的函數。例如,Apache Commons Lang 函式庫有以下方法:
public static String unescapeJava(String str)
此方法可用於對 Java 字串文字進行轉義,包括上述基本方法未涵蓋的轉義序列。
以上是如何取消轉義 Java 字串文字?的詳細內容。更多資訊請關注PHP中文網其他相關文章!