如果没有这个例子,我很难解释这个问题:
我希望用字符串“Albert Pujols”替换字符串“switch('Pujols','Albert')”的每个实例,或者将字符串“switch('Cabrera','Melky')替换为字符串“Melky Cabrera”,全部都是Java。到目前为止我所拥有的是:
line = line.replaceAll("switch\\('(.*)','(.*)'\\)" , "\2 \1");
如果我可以使用\ 1和\ 2寄存器来引用第一个正则表达式中的模式(我知道我不能),这可能会正常工作。有没有办法在Java中操作这条线到我的偏好? switch不是我写的真正的函数,假设这是一个文本文件,我正在逐行阅读。
答案 0 :(得分:3)
Java将$
字符用于组引用:
line = line.replaceAll("switch\\('(.*)','(.*)'\\)" , "$2 $1");