【发布时间】:2017-02-27 05:19:36
【问题描述】:
我的问题是只用另一个字符替换字符串中最后一次出现的字符。当我使用 String.replace(char1, char2) 时,它会替换字符串中所有出现的字符。
例如,我有一个像
这样的地址字符串String str = "Addressline1,Addressline2,City,State,Country,";。
我需要将字符串末尾出现的“,”替换为“.”。
我替换字符的代码是
str = str.replace(str.charAt(str.lastIndexOf(",")),'.');
替换后的字符串如下:
Addressline1.Addressline2.City.State.Country.
Java SDK 有问题吗?如果是,如何解决?
【问题讨论】:
-
不,
#replace接受一个字符参数并将其替换为第二个。您实际上说过“在字符为,的位置找到字符,然后将所有这些字符替换为.” -
试试这个stackoverflow.com/questions/16665387/…>.
-
您想要什么似乎有些混乱。你想(1)用
.替换字符串的最后一个字符,不管它是什么; (2) 将字符串的最后一个字符替换为.,仅当它是逗号时;或 (3) 用.替换字符串中的最后一个逗号,即使逗号后面还有字符? -
@suku,我需要在 java 中而不是在 javascript 中解决这个问题。