因此,我目前正在研究一个小型生活助手,它将ARX文档(ARS世界中的迁移文档)转换为我可以在数据库上检查的SQL语句。
ARX是一个基本文档,其中包含表名称,列名称和新条目的值名称等信息。我正在尝试使用Java读取那些ARX,以便创建可以检查条目是否确实在ARS服务器上创建的SQL语句。
问题似乎是Java字符串语法(对于字符串等,"
)和SQL语法(对于字符串,'
)之间的差异。所以我正在努力用SQL替换那些Java字符。我也尝试为\"
进行此操作,因为在Java中有效,但在SQL \"
中只是一个普通字符串,没有特殊含义。
我的错误在哪里?有没有更简单的方法可以做到这一点?我不能成为世界上第一个尝试这样做的人。
String a = "123\\\"123\\\"123";
System.out.println(a);
a.replaceAll("\\\"", "\"");
System.out.println(a);
预期结果:
123\"123\"123
123"123"123
实际结果:
123\"123\"123
123\"123\"123
答案 0 :(得分:0)
您没有使用replaceAll
的结果。
尝试一下:
a = a.replaceAll("\\\"", "\"");
更新:
是的,使用replace
代替replaceAll
:
a = a.replace("\\\"", "\"");
答案 1 :(得分:0)
在您的情况下,您不应使用replaceAll方法。
此处提供以下代码供您参考。
String a = "123\\\"123\\\"123";
System.out.println(a);
a = a.replace("\\", "");
System.out.println(a);