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

为什么replaceAll失败并显示“非法组引用”?

沃瑾瑜
2023-03-14
问题内容

我需要更换

\\\s+\\$\\$ to $$

我用了

String s = "  $$";
s = s.replaceAll("\\s+\\$\\$","$$");

但它引发异常

java.lang.IllegalArgumentException:非法的组引用


问题答案:

使用"\\$\\$"第二个参数:

String s="  $$";
s=s.replaceAll("\\s+\\$\\$","\\$\\$");
//or
//s=s.replaceAll("\\s+\\Q$$\\E","\\$\\$");

$正则表达式的替换参数中的is组符号

所以你需要逃脱



 类似资料:
  • 我需要替换 我用了 但它抛出异常 java.lang.IllegalArgumentException: Illegal group reference

  • 问题内容: 为什么: 产生错误? 如果它刚返回就不会更合逻辑吗? 问题答案: 由于空字符串不是有效的JSON,因此返回不正确,因为它是有效的JSON。例如 返回。无效的JSON也被解析为null将是一个错误。 空字符串不是有效的JSON,两个引号是有效的JSON。这是一个重要的区别。 也就是说,包含两个引号的字符串与空字符串不同。 将正确解析(返回一个空字符串)。但 将不会。 有效的最小JSON字

  • 但是得到一个错误: Py4JJavaError:调用o41时出错。显示字符串:组织。阿帕奇。火花SparkException:作业因阶段失败而中止:阶段1.0中的任务0失败1次,最近一次失败:阶段1.0中的任务0.0丢失(TID 1)(10.75.81.111执行器驱动程序):org。阿帕奇。火花SparkException:Python worker无法连接回。

  • 问题内容: 我在使用Python 2.7(Anaconda)的OSX El Capitan。启动命令将产生: 这些都不起作用(退出时出现相同的错误)。 已是最新。我基本上尝试遵循相关问题中的所有建议,但没有成功。任何帮助表示赞赏,谢谢! 问题答案: 从此博客复制。 通过查找可能得出结论的信息,即brew安装的配置可能不正确,请打开脚本以修改其中的某些内容: 变成: 保存 然后重新安装mysql-p

  • 问题内容: 我想不断详细说明数据集流的行(最初由Kafka发起):基于条件,我想更新Radis哈希。这是我的代码段(是上一个命令的结果,该命令是这种类型的流:。扩展为): 我收到一个巨大的堆栈跟踪,相关部分(我认为)是这样的: 谁能解释为什么发生此异常以及如何避免?谢谢! 问题答案: Spark上下文不可序列化。 ForeachWriter的任何实现都必须可序列化,因为每个任务都将获得所提供对象的

  • 笔记: 必须安装Java。获取JRE(http://www.java.com)或者JDK 从环境变量JAVA_HOME(C:\Program Files\Java\jdk1.8.0_251)...13:07:44.382[main]ERRORegistry.java:35ServiceDiscoveryIorg.kie.api.KieService: 131-加载失败,因为已经存在一个服务ervi