gpt4 book ai didi

java - 我如何从下面的列表值中进行字符串操作

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:06:27 25 4
gpt4 key购买 nike

我想在不进行硬编码的情况下动态地用列表值替换字符串。像 'list.get(0)'

在第一次迭代中 ==> str = str.replace("{Name}", 'One');

在第二次迭代中 ==> str = str.replace("{subInterfaceId}", 'Two');

提前致谢。

String str = "Iamstillquite/{Name}/newtoJava/programm/ingandIam/{subInterfaceId}/tryingtoupdate/anexisting";
List<String> list = new ArrayList<>();
list.add("One");
list.add("Two");

for (String s : list) {
str = str.replace("{Name}", s);
}

预期输出:

String finalstr = "Iamstillquite/One/newtoJava/programm/ingandIam/Two/tryingtoupdate/anexisting";

最佳答案

最好的方法是使用正则表达式:

List<String> list = new ArrayList<>();
list.add("One");
list.add("Two");
String str = "Iamstillquite/{Name}/newtoJava/programm/ingandIam/{subInterfaceId}/tryingtoupdate/anexisting";
String regex = "(?<=^[^\\{]+)\\{.*?\\}";
for (String s : list)
{
str = str.replaceAll(regex, s);
}
System.out.println(str);

输出:

Iamstillquite/One/newtoJava/programm/ingandIam/Two/tryingtoupdate/anexisting

好处:您不必更改任何现有数据,正则表达式难以置信对于搜索和替换内容非常有用。

此外,您可以保持输入字符串 str 不变,这与您必须为此处给出的其他答案所做的不同。

关于java - 我如何从下面的列表值中进行字符串操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54265174/

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