用正则表达式在Eclipse中查找/替换java
我需要换一个
Sprite name = new Sprite(number1, number2, this.mScritteRegion.get(number3)
{
stuff_here
};
这里的名字、号码和东西是我想保留的部分
与
RectangularShape name = mLanguageManager.getSpriteWithText(number1, number2, 0, 0, "", getResources.getString(R.string.), mLanguageManager.getFont("main_font"), new IOnAreaTouched()
{
stuff_here
});
到目前为止,我使用regex找到了代码的第一部分,但我无法选择新行+{+stuff_here+}
这里是正则表达式
Sprite (\w)* = new Sprite\((\d)*(\s)*,(\s)*(\d)*(\s)*,(\s)*this.mScritteRegion.get\((\d)*\)\)
我想我需要用什么来回答它
RectangularShape $1 = mLanguageManager.getSpriteWithText\($2, $5, 0, 0, "", getResources.getString\(R.string.\), mLanguageManager.getFont\("main_font"\), new IOnAreaTouched\(\) $X\)
我放$X是因为我仍然不知道它将是什么索引,另外我也不知道如何处理};到});。我必须在}之前把东西拿到这里;,因为它是唯一允许我捕捉一切的分隔符,但我不知道如何在它们之间插入括号
我今天刚开始看广告regex,所以我是这个领域的不速之客
你能帮我吗
# 1 楼答案
我在NetBeans中这样做了,我认为正则表达式必须看起来相同,可能替换字符不同(我将在使用Eclipse访问计算机时进行检查)
捕捉第一个字符串的正则表达式是:
替换正则表达式是
几句话:
};
序列不能出现在stuff_here
块中因此,来源是:
我得到: