如何在IDEA中查找指定类的所有变量并将其替换为同名
Posted
技术标签:
【中文标题】如何在IDEA中查找指定类的所有变量并将其替换为同名【英文标题】:How to find and replace all variables of specified class to same name in IDEA 【发布时间】:2014-02-09 06:48:59 【问题描述】:假设我有一堂课:
public class User
private String name;
public void setName(String name) ;
public String getName()
在项目的代码中,User
类的实例使用了很多不同的变量名:
User user = new User();
user.setName(...);
User u = new User();
u.getName();
User member = new User();
member.setName(...)
有什么方法可以在一次操作中将它们全部替换为user
?
我尝试了IDEA提供的“结构替换”功能,但做不到。
【问题讨论】:
重构或查找并替换。 不行,AFIK,你必须自己寻找和替换。 在构造函数上查找用法,并手动修复每个事件可能会很快... 我不认为你可以这样做,因为它需要对每个实例名称进行完整的重命名重构,这是一件苦差事,很快就会导致混乱。但是,无论如何,您可能真的不想这样做。您的示例显示您正在为某些实例变量使用角色名称,这是一个很好的做法,您将在重构时打破它。虽然,替换单字母变量通常是个好主意。 【参考方案1】:尝试编辑 - 查找 - 替换,然后勾选“Regex”,输入“User [a-z]*”。这应该得到所有带有“用户”的行。然后在替换字段中输入“用户”+您的标识符并执行“全部替换”。
【讨论】:
然后你会得到 User user = new User();用户.setName(...);用户用户 = 新用户(); u.getName();用户用户 = 新用户(); member.setName(...) 和很多错误。以上是关于如何在IDEA中查找指定类的所有变量并将其替换为同名的主要内容,如果未能解决你的问题,请参考以下文章
python 在字符串中查找匹配项并将其替换为替换字符串,直到没有匹配字符串。