gpt4 book ai didi

java - 使用流从字符串中删除多个字符串

转载 作者:行者123 更新时间:2023-12-01 14:33:07 25 4
gpt4 key购买 nike

我有一个字符串列表和一个字符串。如果字符串包含任何列表,那么我需要将其删除。

我正在使用以下方法并且它工作正常。我只是想知道是否可以使用 Stream API 替换它?

List<String> exclude = getExcludeList();

String phrase = "My test phrase";

for (String str: exclude) {
phrase = phrase.replace(str, "");
}

最佳答案

您可以形成一个由列表中的字符串组成的正则表达式交替,然后进行正则表达式替换以将它们从短语中删除:

List<String> exclude = getExcludeList();
String phrase = "My test phrase";
String regex = exclude.stream().collect(Collectors.joining("|", "\\b(?:", ")\\b"));
phrase = phrase.replaceAll(regex, "");

关于java - 使用流从字符串中删除多个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59754419/

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