Струны в ржавчине
Струны выглядят немного странно в ржавчине. В базовом языке у ржавчины есть только один вид строки, то есть «str». Str - неизменяемая примитивная строка фиксированной длины.
Тип String, который предоставляется стандартной библиотекой Rust (не закодирован на основном языке), является изменяемым, расширяемым, принадлежащим, закодированным в UTF-8. Стандартная библиотека Rust также включает ряд других строковых типов, таких как OsString
, OsStr
, CString
и CStr
. Эти строковые типы могут хранить текст в разных кодировках или по-разному представляться в памяти. Все это предварительные концепции, которые нужно понять (подумайте о прочтении документации).
Давайте сконцентрируемся на двух основных типах: str и String.
let _val = «привет»; // примитивный строковый тип неизменяемый по умолчанию
let _val1 = String :: from («Привет, мир!»); // Растущий и изменчивый
Строковые методы
Примечание: - Мы будем применять все методы к типу String, а не к типу str.
- Найдите длину с помощью метода len (), который работает для обоих типов.
2. Добавьте что-нибудь в строковый метод push () и push_str ().
Оба метода имеют разные варианты использования. Метод push () может добавлять только один символ в строку, в то время как push_str () может добавлять что угодно. Также убедитесь, что вы определили изменяемый тип
здесь я использовал метод push () для добавления символа Юникода, давайте попробуем добавить строку с помощью push ();
О, вао! компилятор вопит и что красота написания кода в ржавчине компилятор выступает в роли наставника. Компилятор Rust не только сообщает, в чем заключается ошибка, но и кратко объясняет ее.
Итак, чтобы добавить строку к существующей, мы воспользуемся методом push_str ().
3. Емкость (количество байтов, которые можно сохранить) используйте метод capacity ().
4. Метод is_empty (), чтобы проверить, пуста ли строка или нет, и возвращает логическое значение (истина или ложь);
5. Метод contains () может использоваться, чтобы определить, присутствует ли какая-либо подстрока в объявленной строке. он также возвращает логическое значение.
6. replace () используйте метод replace, чтобы заменить подстроку другим словом.
Мы также можем перебрать строку, как здесь, мы будем перебирать пробелы, то есть каждое слово будет на новой строке в консоли.
Мы также можем создать String определенной емкости
пусть mut name = String :: with_capcity (10);
Дополнительный:
Вы можете использовать утверждение в строке (в целях тестирования)
assert_eq! (слева, справа);
посмотрите здесь, мы получаем сообщение об ошибке, так как исходная длина st равна 2.
См. Этот пример:
Он не показывает ошибки, поскольку наши утверждения верны в обоих случаях.
Для получения дополнительных методов строк перейдите по ссылке ниже.
Продолжение следует……
Продолжайте шуршать !!!!!!!!!!!!!!