gpt4 book ai didi

Java 正则表达式

转载 作者:行者123 更新时间:2023-11-29 06:47:42 26 4
gpt4 key购买 nike

我需要删除某个项目列表末尾的一些字符。这些字符总是相同的(C、CD、PDF、CPDF、M),使用这个正则表达式我可以去掉它们:

str.replaceAll("(C|CD|PDF|CPDF|M)$", "");

但是,我无法反转此表达式:我希望能够隔离(例如,通过删除字符串的其余部分)任何这些代码,如果它们位于字符串。我试过这个:

str.replaceAll("!(C|CD|PDF|CPDF|M)$", "");

我可能会使用一些字符串函数,但我确信只使用正则表达式是可能的。

最佳答案

您已经使用括号来捕获匹配的组,现在只需引用该组即可。

    Matcher m = Pattern.compile("(C|CD|PDF|CPDF|M)$").matcher("165N1JCD");
while (m.find()) {
System.out.println(m.group(1)); // prints out "CD"
}

关于Java 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1975418/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com