Android - 如何用另一个字符串替换部分字符串?

时间:2011-04-22 10:06:09

标签: java android string

我有一些数字和英文单词的字符串,我需要将它们翻译成我的母语,找到它们并用这个单词的locallized版本替换它们。你知道如何轻松地替换字符串中的单词吗?

由于

编辑:

我试过(字符串“to”的一部分应该用“xyz”代替):

string.replace("to", "xyz")

但它不起作用......

5 个答案:

答案 0 :(得分:175)

它正在工作,但它不会修改调用者对象,而是返回一个新的字符串 所以你只需要将它分配给一个新的String变量,或者它自己:

string = string.replace("to", "xyz");

String newString = string.replace("to", "xyz");

API文档

public String replace (CharSequence target, CharSequence replacement) 

自:API级别1

  

复制此字符串替换   出现的指定目标   序列与另一个序列。该   字符串从头开始处理   到最后。

<强>参数

  • target要替换的序列。
  • replacement替换 序列

返回生成的字符串。
如果目标或替换为空,则抛出 NullPointerException

答案 1 :(得分:2)

可能对你有兴趣:

在java中,字符串对象是不可变的。不可改变只是意味着不可修改或不可改变。

创建字符串对象后,无法更改其数据或状态,但会创建新的字符串对象。

答案 2 :(得分:1)

String str = "to";
str.replace("to", "xyz");

试一试:)

答案 3 :(得分:0)

在Kotlin中没有replaceAll,所以我创建了这个循环来替换字符串或任何变量中的重复值。

 var someValue = "https://www.google.com.br/"
    while (someValue.contains(".")) {
        someValue = someValue.replace(".", "")
    }
Log.d("newValue :", someValue)
// in that case the stitches have been removed
//https://wwwgooglecombr/

答案 4 :(得分:-2)

你只犯了一个错误。

在那边使用replaceAll()功能。

e.g。

String str = "Hi";
String str1 = "hello";
str.replaceAll( str, str1 );