Android - how to replace part of a string by another string?
Android - как заменить часть строки другой строкой?
У меня есть строки с некоторыми цифрами и английскими словами, и мне нужно перевести их на мой родной язык, найдя их и заменив локализованной версией этого слова. Вы знаете, как легко добиться замены слов в строке?
Спасибо
Редактировать:
Я пробовал (часть строки "to" следует заменить на "xyz"):
string.replace("to", "xyz")
Но это не работает...
Переведено автоматически
Ответ 1
Это работает, но не изменяет вызывающий объект, а возвращает новую строку. Итак, вам просто нужно присвоить ее новой строковой переменной или самой себе:
string = string.replace("to", "xyz");
или
StringnewString= 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 , поэтому я создал этот цикл для замены повторяющихся значений в строке или любой переменной.
varsomeValue="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/