Android

Android - how to replace part of a string by another string?

Android - как заменить часть строки другой строкой?

У меня есть строки с некоторыми цифрами и английскими словами, и мне нужно перевести их на мой родной язык, найдя их и заменив локализованной версией этого слова. Вы знаете, как легко добиться замены слов в строке?

Спасибо

Редактировать:

Я пробовал (часть строки "to" следует заменить на "xyz"):

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

Но это не работает...

Переведено автоматически
Ответ 1

Это работает, но не изменяет вызывающий объект, а возвращает новую строку.
Итак, вам просто нужно присвоить ее новой строковой переменной или самой себе:

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

или

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

Документы по API

public String replace (CharSequence target, CharSequence replacement) 

Поскольку: уровень API 1


Копирует эту строку, заменяя вхождения указанной целевой последовательности другой последовательностью. Строка обрабатывается от начала до конца.


Параметры


  • target последовательность для замены.

  • replacement последовательность замены.

Возвращает результирующую строку.

Выдает NullPointerException ошибку, если значение target или replacement равно null.

Ответ 2

МОЖЕТ БЫТЬ, ЭТО БУДЕТ ВАМ ИНТЕРЕСНО:

В Java строковые объекты неизменяемы. Неизменяемый просто означает неизменяемый.

Как только строковый объект создан, его данные или состояние не могут быть изменены, но создается новый строковый объект.

Ответ 3

В 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
String str = "to";
str.replace("to", "xyz");

Просто попробуйте :)

java android string