Java:
Удаление кавычек из строки
Как:
Давайте выдернем эти надоедливые кавычки из нашего текста. Мы будем использовать метод replace()
для быстрых исправлений и regex для сложных случаев.
public class QuoteRemover {
public static void main(String[] args) {
String stringWithQuotes = "\"Привет, 'Мир'!\"";
String withoutQuotes = stringWithQuotes.replace("\"", "").replace("'", "");
System.out.println(withoutQuotes); // Привет, Мир!
// Теперь с regex для любителей шаблонов
String stringWithMixedQuotes = "\"Java\" и 'Программирование'";
String cleanString = stringWithMixedQuotes.replaceAll("[\"']", "");
System.out.println(cleanString); // Java и Программирование
}
}
Погружение
В прошлом кавычки в строках не слишком мешали — системы были проще, и данные не были такими запутанными. С появлением сложных форматов данных (JSON, XML) и необходимости обмена данными управление кавычками стало ключевым. Говоря о альтернативах, конечно, можно написать парсер, пройтись циклом по каждому символу и построить новую строку (может быть забавно в дождливый день). Существуют также сторонние библиотеки, которые могут справиться с этим более изящно, предоставляя опции для экранирования символов вместо их удаления, или для обработки различных типов кавычек в соответствии с локалью. С точки зрения реализации, имейте в виду, что удаление кавычек без контекста может изменить значение или структуру данных — всегда учитывайте “почему” перед “как”.
Смотрите также
- Для более глубокого погружения в regex, ознакомьтесь с официальной документацией Java: https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/regex/Pattern.html
- Нужно экранировать кавычки вместо их удаления? Stack Overflow к вашим услугам: https://stackoverflow.com/questions/383551/escape-string-for-sql-insert
- Обработка JSON в Java? Вероятно, вы часто будете сталкиваться с кавычками. Вот отправная точка: https://www.oracle.com/technical-resources/articles/java/json.html