当前位置: 首页 > 面试题库 >

如何在Java中转义$?

国俊艾
2023-03-14
问题内容

我正在尝试下面的代码,但出现错误

String x = "aaa XXX bbb";
    String replace = "XXX";
    String y = "xy$z";
    String z=y.replaceAll("$", "\\$");
    x = x.replaceFirst(replace, z);
    System.out.println(x);

错误

Exception in thread "main" java.lang.IllegalArgumentException: Illegal group reference
    at java.util.regex.Matcher.appendReplacement(Unknown Source)
    at java.util.regex.Matcher.replaceFirst(Unknown Source)
    at java.lang.String.replaceFirst(Unknown Source)
    at Test.main(Test.java:10)

我想要结果

aaa xy$z bbb

问题答案:

replace()改用,它不使用正则表达式,因为您根本不需要它们:

String x = "aaa XXX bbb";
String replace = "XXX";
String y = "xy$z";
x = x.replace(replace, y);
System.out.println(x);

这将按aaa xy$z bbb预期打印。



 类似资料:
  • 问题内容: 我坚持这样: 我有一个写在HTML报告。的是 但是该链接不起作用,因为“ Evidencia”未包含在引号中,如何将引号放在参数中? 在带来这二零一三年十月一十日09:15:00.110 问题答案: 您可以使用。在Java中,您可以使用来访问转义字符。

  • 问题内容: 我正在读取Java中的源文件,但是当我打印它(sysout)时,转义的字符不再转义。如何在Java中转义像和这样的字符? 问题答案: 您应该使用Apache Commons Text中的类(您也可以在Apache Commons Lang3中找到该类,但已弃用该类)。您会发现Apache Commons中还有许多其他产品可能对您在Java开发中遇到的其他问题有用,因此您不必重新发明轮子

  • 问题内容: 我已经在中绘制了一些图形,例如圆形,矩形等。 但是我想绘制一些旋转了特定程度的图形,例如旋转的椭圆。我该怎么办? 问题答案: 如果您使用plain ,则强制转换为first: 旋转整个: 要重置旋转(因此您只旋转一件事): 例:

  • 问题内容: 我需要取消转义包含转义的XML标签的xml字符串: 我确实找到了一些可以执行此任务的库,但是我宁愿使用可以执行此任务的单一方法。 有人可以帮忙吗? 干杯,Bas Hendriks 问题答案: (commons-lang,下载)

  • 问题内容: 当我有一个字符串,如: 使用时,如何让Java打印实际的转义字符(而不将其解释为转义字符)? 例如,打电话时 我想看看: 并不是: 我希望看到用于调试目的的实际转义符。 问题答案: 一种方法是: 然后你跑了。