Уже долго мучаюсь над проблемой. Имеются строки примерно такого формата: registrationNumber:""074-р"" registrationNumber:"074"-р" registrationNumber:""07"4-р"" После двоеточия наружные кавычки всегда имеются, количество вложенных кавычек может быть произвольным. Никак не могу реализовать способ экранировать кавычки, вложенные в основные. Помогите пожалуйста.
Вроде можно так.
public class HelloWorld {
public static void main(String[] args) {
String s = "egistrationNumber:\"074\"-р\"";
System.out.println(s);
String replacedStr = s.replaceAll("\"", "\\\\\"");
System.out.println(replacedStr);
}
}
ouput:
egistrationNumber:"074"-р"
egistrationNumber:\"074\"-р\"
UDP:
public class HelloWorld {
public static void main(String[] args) {
String[] arrays = {
"registrationNumber:\"\"074-р\"\"",
"registrationNumber:\"074\"-р\"",
"registrationNumber:\"\"07\"4-р\"\"",
};
Pattern pattern = Pattern.compile("(.+:)\"(.+)\"");
for (String string : arrays) {
Matcher matcher = pattern.matcher(string);
if (matcher.find()) {
String result = matcher.group(2).replace("\"", "\\\"");
String newString = matcher.group(1) + "\"" + result + "\"";
System.out.println("NewString: " + newString);
} else {
System.out.println("Не найден: " + string);
}
}
}
}
ouput:
NewString: registrationNumber:"\"074-р\""
NewString: registrationNumber:"074\"-р"
NewString: registrationNumber:"\"07\"4-р\""
См. демо на Java онлайн.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
возникла проблема с выравниванием ширины блока по наибольшему в колонкеВот как это выглядит на данный момент:
Ошибка говорит что нельзя присвоить текст к несуществующему объекту, что-то не так с получением данных
Коллеги, прошу помочь, сломал всю голову
//Сложность заключается в запоминании единицы при сложеннии и добавлении её на следующей итерации