String 使用IntelliJ IDEA结构替换关联字符串文本
我试图搜索字符串的静态连接,并使用结构化搜索替换将它们组合成单个字符串 比如说 我要搜索替换String 使用IntelliJ IDEA结构替换关联字符串文本,string,search,replace,intellij-idea,structural-search,String,Search,Replace,Intellij Idea,Structural Search,我试图搜索字符串的静态连接,并使用结构化搜索替换将它们组合成单个字符串 比如说 我要搜索替换“String1”+“String2”+“String3” 并替换为“String1String2String3”。但不应替换注释中的字符串 public class Main { public static void main(String[] args) { String s = "String1"+"String2" +"St
“String1”+“String2”+“String3”
并替换为“String1String2String3”
。但不应替换注释中的字符串
public class Main {
public static void main(String[] args) {
String s = "String1"+"String2"
+"String3";
System.out.println(CONSTANT);
}
// private static final String CONSTANT ="String1"
// +"String2"+"String3"
}
如果我搜索
"$String1$"
这将导致上述字符串出现1次
然而
与上面的字符串不匹配
结构搜索如何取代工作?
如何引用
搜索字符串
替换字符串中的搜索字符串
中的变量看起来结构化搜索目前并不完全支持您的用例。您可以使用以下查询匹配字符串:
"$String1$"+"$String2$"+"$String3$"
并替换为:
"$String1$$String2$$String3$"
但这只会找到三个字符串文字的字符串连接。
您可能想在处提交一份bug报告,这是一个好问题,但在我看来,这是不必要的,因为java编译器本身就包含这样的字符串。您可以编译您的示例并查看反编译的类文件。感谢我知道这一点,这个问题更多的是关于结构化搜索替换和理解它是如何工作的,因为没有太多关于它的文档。
"$String1$$String2$$String3$"