首页 > 解决方案 > 如何使用预定义的字符类和前瞻来制作正则表达式模式?

问题描述

String search1 = "protected List<abDTO.bdDTO.cd> name;"
String search2 = "protected List<abDTO.bd.cd> name;"

我喜欢替换没有 DTO 的类名。

结果:

String res1= "protected List<abDTO.bdDTO.cdDTO> name;"
String res2= "protected List<abDTO.bdDTO.cdDTO> name;"

最后,我用 java 做类似的事情:

.replaceAll("DTO\\.(\\w+)(?!DTO)\\>", "DTO.$1DTO>")
.replaceAll("DTO\\.(\\w+)(?!DTO)\\.", "DTO.$1DTO>")

我想我离结果不远了。

如何组合预定义的字符类\w并告诉他们它不能在单词末尾包含 DTO?

标签: regexpattern-matchinglookahead

解决方案


推荐阅读