gpt4 book ai didi

Java字符串用数组中的新模式替换正则表达式

转载 作者:行者123 更新时间:2023-12-01 23:41:50 24 4
gpt4 key购买 nike

我遇到了无法解决的问题

我有一个段落包含一些关键字需要替换为存储在数组中的新值

示例:

Paragraph: "My most favorite fruit is [0], but I also like [1] and [3]"

Array: fruits = ["Banana", "Orange", "Apple", "Grape"]

我的期望是:我最喜欢的水果是香蕉,但我也喜欢橙子和葡萄

你能帮我找到解决方案吗?

我尝试将我的句子转换为字符串数组,如下所示:

["我最喜欢的水果是","[0]",",但我也喜欢","[1]","和","[3]"]

之后,我将 [0] 替换为 0,我得到了:

[“我最喜欢的水果是“,”0”,”,但我也喜欢“,”1”,”和“,”3”]

我倾向于将上面数组中的 013 替换为 fruits[0] 的值>, fruits[1], fruits[3] 然后将该数组转换为完整的字符串

但我认为这不是最好的解决方案,因为如果我得到这样的输入句子:“2[2]”那么我将收到的输出是AppleApple ,而期望是 2Apple

最佳答案

Java 的 string formatting有一个内置的语法。一般格式为:

%[argument_index$][flags][width][.precision]conversion

所以你可以使用例如%1$s 表示第一个格式参数,%2s 表示第二个,依此类推。请注意,索引是从 1 开始的,而不是从 0 开始的。

例如

String[] fruits = {"Banana", "Orange", "Apple", "Grape"};
System.out.format(
"My most favorite fruit is %1$s, but I also like %2$s and %4$s",
fruits);

关于Java字符串用数组中的新模式替换正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34178798/

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