java - 转义单个反斜杠\两个

标签 java regex string

我有以下字符串,我只想转义双引号之间的反斜杠。我尝试这样做,

String s = "Hello\na = a.split(\"\n\")";
String tem = s.replaceAll("(?<=\")[^\\\\](?=\")", "\\\\");

但我得到以下输出,

# output
Hello
a = a.split("\")

我想要这样,

Hello
a = a.split("\n")

对此有什么想法吗?

最佳答案

让事情变得简单:

假设反​​斜杠和双引号,始终位于\n 字符之前

public static void main(String[] args) {
    String s = "Hello\na = a.split(\"\n\")";
    String tem = s.replaceAll("\\\"\\n\\\"", "\\\"\\\\n\\\"");
    System.out.println(tem);
}

关于java - 转义单个反斜杠\两个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55013485/

相关文章:

java - 在 Java Spring Maven Web 应用程序中调用 C/C++ 函数

java - java中删除查询的验证

mysql - 如何计算 MySQL/正则表达式替换器中的单词?

javascript - 正则表达式只检测第一个表情符号?

javascript - 如何在主表达式之前匹配模式?

java - 将字节数组转换为 OutputStream

java - 在 IntelliJ IDEA 中创建数据库

c++ - 如何从 nsACString 转换为 LPCWSTR?

java - word.toUpperCase().chars() 或 word.chars().map(Chars::toUpperCase) 哪个更好?

string - 如何在golang中替换字符串中的所有字符