MyEclipse 正则替换问题

在myeclipse中,我想替换如下值:

AAAInf aaa = new AAA();
BBBInf bbb = new BBB();
BCEInf ebc = new BCE();

替换成:
AAAInf aaa = new org.rf.Util.mapping(AAAInf.class);
BBBInf bbb = new org.rf.Util.mapping(BBBInf.class);
BCEInf ebc = new org.rf.Util.mapping(BCEInf.class);

请看截图,我已经用正则表达式查询出需要替换内容,但在替换时出现了问题。我该如何编写?请告之。

4个回答


code="RegExp"(Inf.+?)\1();[/code]

[code="RegExp"]\1\2new org.rf.Util.mapping(\1Inf.class);[/code]

eclipse 3.7通过

hotsoftem
散步蜗牛 感谢,虽然我在没有答案之前是用楼下的想法做的,你还是最佳的答案。用java写下乘了。
7 年多之前 回复
ROBIN0109
ROBIN0109 不小心多打了一个new,下面的删掉一个"new "就行了
7 年多之前 回复

分都不给还想别个帮你搞 哈哈。

MeiJianMing
MeiJianMing 恩。。。。。
7 年多之前 回复
hotsoftem
散步蜗牛 你是不是梅建明。
7 年多之前 回复
hotsoftem
散步蜗牛 新人,没有分啊,不好意思。
7 年多之前 回复

单个文件用带列编辑的编辑器可以处理。
多个文件就不晓得了。
推荐个编辑器sublime_text,列编辑蛮方便的。

zonghengmodao
zonghengmodao eclipse自带列编辑Alt+Shift+A
7 年多之前 回复

myeclipse的那个正则不好用,而且那个全文替换不能使用正则
自己写个java类,把java文件都修改变
[code="java"]
static void test(){
//AAAInf aaa = new org.rf.Util.mapping(AAAInf.class);
// BufferedReader br = null; BufferedWriter wr = null; br = new BufferedReader(new FileReader(f));
//String str =br.readline();
String str = "AAAInf aaa = new AAA();";
Pattern p = Pattern.compile("(\w+)Inf(.*?)(\1\(\))");
Matcher m = p.matcher(str);
String tmp="";
if(m.find()){
tmp = "org.rf.Util.mapping("+m.group(1)+".class)";
str = str.replace(m.group(3), tmp);
}
System.out.println(str);
}
[/code]

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问