Замена специальных символом на числа по порядку

216
07 августа 2018, 02:00

Необходим кусочек кода, который позволит заменять специальные символы на числа, которые будут идти по порядку.

Пример:

Ввод:

Текст#abc
Текст#abc
Текст#abc

Выход:

Текст#1
Текст#2
Текст#3

Помнится я раньше уже делал такую штуку, только вот сейчас забыл, а она нужна.. Прошу помочь)

Answer 1

Ответ может чуть-чуть отличаться в зависимости где именно у вас текст, в одном месте или в разных, но принцип будет тот же: создаем переменную, которая и будет нашим вставляемым числом, увеличивающимся при нахождении места для замены, разбиваем текст на строки, меняем и объединяем обратно. В итоге должно получиться что-то вроде этого:

int num=0;
String toReplace="abc";
String[] strings=text.split(" ");
String result="";
for(String string:strings){
 num++;
 if(result.euals("")){
  result=string.replace(toReplace,num+"");
 }else{
  result+=string.replace(toReplace,num+"");
 }
}
text=replace;
Answer 2

Например, так (весь код):

String text = "Текст#abc\nТекст#abc\nТекст#abc";
String toReplace = "abc";
int number = 1;
while (text.contains(toReplace)) {
    text = text.replaceFirst(toReplace, "" + number);
    number++;
}
System.out.println(text);

Консоль:

Текст#1
Текст#2
Текст#3
READ ALSO
Android Fragment, передача ссылки в браузер

Android Fragment, передача ссылки в браузер

Имеется ссылка, которую необходимо открыть в браузереКак это можно сделать? У Activity - intentом, а у фрагментов как?

192
Получение ссылки на объект Class класса String [закрыт]

Получение ссылки на объект Class класса String [закрыт]

Есть следующее тестовое задание:

229
Как взять массив из строкового ресурса и поместить в массив String

Как взять массив из строкового ресурса и поместить в массив String

Как взять массив из строкового ресурса и поместить в массив String? В Android проекте есть массив строк:

263
Не удается подключить LESS к проекту

Не удается подключить LESS к проекту

Делаю всё по науке - качаю lessmin

225