gpt4 book ai didi

java - 在Java中找到特定的字符并替换它

转载 作者:行者123 更新时间:2023-12-01 10:27:19 26 4
gpt4 key购买 nike

我从 JSON 中获取了大约一百个 url 字符串。示例:

media.life.com/homes/1000000/10000/6500/6404/6404_1625646_**b.jpg**
media.life.com/homes/1000000/10000/6500/6404/6404_189765_**b.jpg**
media.life.com/homes/1000000/10000/6500/6404/6404_162_**b.jpg**
media.life.com/homes/1000000/10000/6500/6404/6404_532535677_**b.jpg**
media.life.com/homes/1000000/10000/6500/6404/6404_1612452_**b.jpg**
media.life.com/homes/1000000/10000/6500/6404/6404_10976562**_b.jpg**

如您所见,这些网址中唯一常见的就是结尾 "b.jpg"

如何将字符 b 替换为其他字符?

我尝试过这种方法:

public String changeCharInPosition(int position, char ch, String str){

char[] charArray = str.toCharArray();
charArray[position] = ch;
return new String(charArray);
}

这是我调用它的时间:

hs.thumbNailUrl = changeCharInPosition(65, 'l',hs.thumbNailUrl);

但是b的位置总是在变化,所以这种方法效率很低。

最佳答案

如果你总是只有一个该值的字符,你可以使用 .replace() 来替换该字符。

public static void main(String args[]) {
String x = new String("amedia.life.com/homes/1000000/10000/6500/6404/6404_1625646_**b.jpg**");
x = x.replace('b', 'y');
}

输出

amedia.life.com/homes/1000000/10000/6500/6404/6404_1625646_**y.jpg**

现在,如果您尝试根据字符的索引进行替换,您可以使用 StringBuilder 并通过使用子字符串查找 b 的位置,并通过从总长度中减去 b 之后的字符数来查找 b 的位置。

public static void main(String args[]) {
StringBuilder x = new StringBuilder("amedia.life.com/homes/1000000/10000/6500/6404/6404_1625646_**b.jpg**");
x.setCharAt(x.length() - 7, 'y');
}

输出

amedia.life.com/homes/1000000/10000/6500/6404/6404_1625646_**y.jpg**

编辑

第三个选项:

这里我们替换“b”最后一个索引处的字符。

public static void main(String args[]) {
String x = new String("amedia.life.com/homes/1000000/10000/6500/6404/6404_1625646_**b.jpg**");
x = x.replace(x.charAt(x.lastIndexOf('b')), 'y');
System.out.println(x);
}

现在显然您可以循环遍历并为每个字符串使用一个新字符。

关于java - 在Java中找到特定的字符并替换它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35296879/

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