Avatar ·

在 Swift 中字符串是否有像 Java 或 C# 中那样的 trim 方法?

Всем привет! Я только начал изучать Swift после Java, и столкнулся с простой задачей: нужно удалить лишние пробелы и символы новой строки в начале и конце строки. В Java я бы написал `str.trim()`, в C# — `str.Trim()`. Но в Swift я не могу найти ничего похожего. Пробовал написать так: ```swift let text = " Привет, мир! \n" let trimmed = text.trim() // Ошибка: Value of type 'String' has no member 'trim' ``` Получаю ошибку компиляции. Поискал в документации — нашёл только `trimmingCharacters(in:)`, но он принимает какой-то `CharacterSet`, и я не понимаю, как его правильно использовать. Мне нужно просто убрать пробелы и переводы строк с обоих концов строки, как это делается в большинстве языков. Неужели в Swift для этого нужно писать свою функцию? Подскажите, пожалуйста, как правильно почистить строку от пробелов в начале и конце. Заранее спасибо! <<>>

Да, в Swift есть аналог trim — метод trimmingCharacters(in:)

В Swift нет отдельного метода trim, но есть метод trimmingCharacters(in:), который принимает CharacterSet. Чтобы удалить пробелы и символы новой строки с обоих концов, используйте CharacterSet.whitespacesAndNewlines:

```swift let text = " Привет, мир! \n" let trimmed = text.trimmingCharacters(in: .whitespacesAndNewlines) print(trimmed) // "Привет, мир!" ```

Это работает как trim() в Java или Trim() в C#. CharacterSet — это набор символов, которые нужно удалить. .whitespacesAndNewlines включает пробелы, табуляции и символы новой строки.