You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell:如何将字符串中的字面量"\n"替换为实际换行符

将字面量\n转换为实际换行符的方法

下面针对几种主流编程语言,给出具体的转换方案:

Python

方案1:直接替换

适用于仅需处理\n单一转义的场景,用str.replace()替换字面量\n(即字符\和n)为实际换行符:

# 定义包含字面量\n的字符串,可使用双反斜杠或原始字符串前缀r
original_str = "hello\\nworld"
# original_str = r"hello\nworld"  # 等价写法

converted_str = original_str.replace("\\n", "\n")
print(converted_str)
# 输出:
# hello
# world

方案2:解析字符串字面量

如果需要处理多种转义字符(如\t、\\等),可以用ast.literal_eval()解析字符串:

import ast

original_str = "hello\\nworld\\tfoo"
converted_str = ast.literal_eval(f'"{original_str}"')
print(converted_str)
# 输出:
# hello
# world	foo

JavaScript

方案1:正则全局替换

用正则表达式匹配所有字面量\n并替换:

const originalStr = "hello\\nworld\\nfoo";
const convertedStr = originalStr.replace(/\\n/g, "\n");
console.log(convertedStr);
// 输出:
// hello
// world
// foo

方案2:JSON解析

将字符串包裹为JSON格式后解析,自动处理标准转义字符:

const originalStr = "hello\\nworld";
const convertedStr = JSON.parse(`"${originalStr}"`);
console.log(convertedStr);

Java

方案1:字符串替换

Java中需注意反斜杠的转义,用replaceAll()处理:

public class Main {
    public static void main(String[] args) {
        String originalStr = "hello\\nworld";
        // 正则中\\\\n等价于匹配字面量的\n
        String convertedStr = originalStr.replaceAll("\\\\n", "\n");
        System.out.println(convertedStr);
    }
}

方案2:工具类处理

借助Apache Commons Text库的StringEscapeUtils,一键处理所有Java风格转义:

import org.apache.commons.text.StringEscapeUtils;

public class Main {
    public static void main(String[] args) {
        String originalStr = "hello\\nworld\\tbar";
        String convertedStr = StringEscapeUtils.unescapeJava(originalStr);
        System.out.println(convertedStr);
    }
}

内容的提问来源于stack exchange,提问作者Kevin Buchs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 19:17:16