我想捕获以下字符串表达式:
匹配:
- MyUtilClass.cast(MyClass.class, <-- including the space after comma
- MyUtilClass.cast(MyClass2.class, <-- including the space after comma
- MyUtilClass.cast(MyClass3.class, <-- including the space after comma
并将匹配项替换为:
- MyUtilClass.uncheckedCast(
- MyUtilClass.uncheckedCast(
- MyUtilClass.uncheckedCast(
结果:
- MyUtilClass.uncheckedCast(query.getResultList());
- MyUtilClass.uncheckedCast(q.getResultList());
- MyUtilClass.uncheckedCast(rootQuery.getResultList());
我正在使用 Eclipse IDE。
谢谢
最佳答案
您可以使用以下内容进行匹配:
MyUtilClass[.]cast[(]MyClass\d*[.]class,\s*
或者,如果您只有 MyClass、MyClass2 和 MyClass3
,请使用以下内容
MyUtilClass[.]cast[(]MyClass[23]?[.]class,\s*
并替换为以下内容:
MyUtilClass.uncheckedCast(
参见DEMO
关于java - 如何捕获字符串表达式并仅替换其中的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30412440/