【发布时间】:2013-04-15 15:17:03
【问题描述】:
我在替换 java 中的字符串时遇到问题...
该行是:
subject = subject.replaceAll("\\[calEvent\\]", calSubject);
此行不适用于 $ 登录 calSubject。
主题变量是什么,来自文件的动态主题行变量。例如像这样: Calnot = [calEvent]
我想要做的是用主题变量替换 calEvent 占位符。但是我是怎么做的却不起作用,因为当主题包含 $ 符号时它会崩溃。
知道如何做到这一点,以便在主题包含 $ 符号或任何字符时不会中断吗?
【问题讨论】:
-
当你说它崩溃时,你是什么意思?你有堆栈跟踪还是根本没有替换任何东西?
-
您是否遇到了 IllegalArgumentException?
-
错误是:java.lang.IndexOutOfBoundsException: No group 3
-
@OakvilleWork 这是合乎逻辑的,如果它将美元符号解释为捕获组引用,它会尝试用相应的组替换它,如果没有这样的组,它会抛出一个 out-of-绑定异常。