Удаление кавычек из строки

Swift:
Удаление кавычек из строки

Как:

Swift позволяет довольно удобно справиться с задачей удаления кавычек. Вот быстрый пример использования replacingOccurrences(of:with:), который делает именно то, на что похоже — заменяет части текста чем-то другим или вовсе ничем.

var quotedString = "\"Это 'в кавычках' строка.\""
let unquotedString = quotedString.replacingOccurrences(of: "\"", with: "")
print(unquotedString) // Это 'в кавычках' строка.

// Работаем с одинарными кавычками? Просто измените искомое.
quotedString = "'Вот ещё один пример.'"
let singleQuoteRemoved = quotedString.replacingOccurrences(of: "'", with: "")
print(singleQuoteRemoved) // Вот ещё один пример.

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

Подробнее

Мы “очищаем” строки такого рода с самого начала программирования. В давние времена это было больше связано с экономией драгоценной памяти и избежанием синтаксических ошибок при обработке ввода. Сегодня речь идёт о хорошей гигиене данных — особенно при работе с JSON или подготовке строк к работе с базой данных. Одна лишняя кавычка может нарушить SQL-запросы быстрее, чем вы успеете сказать “синтаксическая ошибка”.

Альтернативы? Ну, если вам кажется replacingOccurrences(of:with:) слишком простым, вы можете погрузиться в регулярные выражения для более сложных шаблонов или когда хотите удалять кавычки только в определённых позициях. Класс NSRegularExpression в Swift будет вашим помощником здесь. Но помните, что регекс — это оружие с двумя лезвиями: мощное, но иногда избыточное.

С точки зрения реализации, replacingOccurrences(of:with:) — это метод, предоставляемый String в Swift, который внутренне вызывает более сложные функции манипуляции со строками, обрабатывающие Unicode и другие тонкости современной обработки текста. Это одна из тех “просто на вид, сложно под капотом” вещей, с которыми Swift справляется, чтобы вам не пришлось.

Смотрите также

Для получения дополнительной информации о манипуляциях со строками в Swift:

А если вам стало интересно о регулярных выражениях и вы хотите протестировать свои шаблоны: