如何在java中的replaceAll函数中排除单词

如何在java中的replaceAll函数中排除单词,java,replaceall,Java,Replaceall,我需要删除文件中的所有a-Z字符。我可以通过在java中使用replaceAll方法来做到这一点,但同时我想排除一些单词被替换 例如: str = str.replaceAll("|(?i)A|(?i)B|(?i)C|(?i)D|(?i)E|(?i)F|(?i)G|(?i)H|(?i)I|(?i)J|(?i)K|(?i)L|(?i)M|(?i)N|(?i)O|(?i)P|(?i)Q|(?i)U|(?i)R|(?i)S|(?i)T|(?i)W|(?i)X|(?i)Y|(?i)Z|,""); U0

我需要删除文件中的所有a-Z字符。我可以通过在java中使用replaceAll方法来做到这一点,但同时我想排除一些单词被替换

例如:

str = str.replaceAll("|(?i)A|(?i)B|(?i)C|(?i)D|(?i)E|(?i)F|(?i)G|(?i)H|(?i)I|(?i)J|(?i)K|(?i)L|(?i)M|(?i)N|(?i)O|(?i)P|(?i)Q|(?i)U|(?i)R|(?i)S|(?i)T|(?i)W|(?i)X|(?i)Y|(?i)Z|,"");
U0000-***应用“替换所有逻辑”时应排除此项

ABCD0000

输出:

有什么帮助吗?

请尝试以下方法:

//split the string with your special string
String[] strs = str.split("U0000");
//Iterate through this array and do your "replaceAll" for each string element.
...
//Join the array elements to form your final string
str = String.join("U0000", strs);
下面是一个小示例,演示了如何替换除U以外的所有字母,如果它被4个零取代

String str = "a3(BcU0000gs23";
String[] strs = str.split("U0000");
str = Arrays.stream(strs).map(e -> e.replaceAll("[a-zA-Z]", "")).collect(Collectors.joining("U0000"));
System.out.println(str);

如果你能发布你的代码,包括你在哪里做输出,那会很有帮助。为什么不干脆替换所有[A-Za-z],?你能发布预期输出和当前实际输出吗。你想排除什么样的词,它们有什么特别之处?