首頁 > Java > java教程 > 如何取消轉義 Java 字串文字?

如何取消轉義 Java 字串文字?

Linda Hamilton
發布: 2024-12-22 17:51:10
原創
903 人瀏覽過

How to Unescape Java String Literals?

如何在 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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板