Класс мутабельной, владеющей строки. Содержит внутренний буфер для строк заданного размера. Подробнее...
#include <sstring.h>
Открытые типы | |
| enum | : size_t { LocalCapacity = N | (sizeof(void*) / sizeof(K) - 1) } |
Открытые члены | |
| template<typename... Args> requires (std::is_constructible_v<allocator_t, Args...> && sizeof...(Args) > 0) | |
| constexpr | lstring (Args &&... args) noexcept(std::is_nothrow_constructible_v< allocator_t, Args... >) |
| Создать пустой объект. | |
| template<typename... Args> requires std::is_constructible_v<allocator_t, Args...> | |
| constexpr | lstring (s_str other, Args &&... args) |
| Конструктор из другого строкового объекта. | |
| template<typename... Args> requires std::is_constructible_v<allocator_t, Args...> | |
| constexpr | lstring (size_t repeat, s_str pattern, Args &&... args) |
| Конструктор повторения строки. | |
| template<typename... Args> requires std::is_constructible_v<allocator_t, Args...> | |
| constexpr | lstring (size_t count, K pad, Args &&... args) |
| Конструктор повторения символа. | |
| template<typename... Args> requires std::is_constructible_v<allocator_t, Args...> | |
| constexpr | lstring (const StrExprForType< K > auto &expr, Args &&... args) |
| Конструктор из строкового выражения. | |
| template<StrType< K > From, typename... Args> requires std::is_constructible_v<allocator_t, Args...> | |
| constexpr | lstring (const From &f, s_str pattern, s_str repl, size_t offset=0, size_t maxCount=0, Args &&... args) |
| Конструктор из строкового источника с заменой. | |
| constexpr | lstring (const my_type &other) |
| Копирование из другой строки такого же типа. | |
| template<typename... Args> requires (sizeof...(Args) > 0 && std::is_convertible_v<allocator_t, Args...>) | |
| constexpr | lstring (const my_type &other, Args &&... args) |
| Копирование из другой строки такого же типа, но с другим аллокатором. | |
| template<typename T, size_t I = const_lit_for<K, T>::Count, typename... Args> requires std::is_constructible_v<allocator_t, Args...> | |
| constexpr | lstring (T &&value, Args &&... args) |
| Конструктор из строкового литерала. | |
| constexpr | lstring (my_type &&other) noexcept |
| Конструктор перемещения из строки такого же типа. | |
| template<typename Op, typename... Args> requires (std::is_constructible_v<Allocator, Args...> && (std::is_invocable_v<Op, my_type&> || std::is_invocable_v<Op, K*, size_t>)) | |
| lstring (const Op &op, Args &&... args) | |
| Конструктор заполнения с помощью функтора (см. str_mutable::fill). | |
| my_type & | operator= (const my_type &other) |
| Оператор присваивания копией из строки такого же типа. | |
| my_type & | operator= (my_type &&other) noexcept |
| Оператор присваивания перемещением из строки такого же типа. | |
| my_type & | operator= (simple_str< K > other) |
| Оператор присваивания из simple_str. | |
| template<typename T, size_t S = const_lit_for<K, T>::Count> | |
| my_type & | operator= (T &&other) |
| Оператор присваивания строкового литерала. | |
| my_type & | operator= (const StrExprForType< K > auto &expr) |
| Оператор присваивания строкового выражения. | |
| constexpr size_t | length () const noexcept |
| Длина строки. | |
| constexpr const K * | symbols () const noexcept |
| Указатель на константные символы. | |
| constexpr K * | str () noexcept |
| Указатель на буфер строки. | |
| constexpr bool | is_empty () const noexcept |
| Пустая ли строка. | |
| constexpr bool | empty () const noexcept |
| Пустая ли строка, для совместимости с std::string. | |
| constexpr size_t | capacity () const noexcept |
| Текущая ёмкость буфера строки. | |
| constexpr K * | reserve_no_preserve (size_t newSize) |
| Выделить буфер, достаточный для размещения newSize символов плюс завершающий ноль. | |
| constexpr K * | reserve (size_t newSize) |
| Выделить буфер, достаточный для размещения newSize символов плюс завершающий ноль. | |
| constexpr K * | set_size (size_t newSize) |
| Устанавливает размер текущей строки, при необходимости выделяя место. | |
| constexpr bool | is_local () const noexcept |
| Узнать, локальный или внешний буфер используется для символов. | |
| constexpr void | define_size () |
| Определить длину строки. Ищет символ 0 в буфере строки до его ёмкости, после чего устаналивает длину строки по найденному 0. | |
| constexpr void | shrink_to_fit () |
| Уменьшает размер внешнего буфера до минимально возможного для хранения строки. Если строка уместится во внутренний буфер - копирует её в него и освобождает внешний буфер. | |
| constexpr void | clear () |
| Делает строку пустой, не меняя буфер строки. | |
| constexpr void | reset () |
| Делает строку пустой и освобождает внешний буфер, если он был. | |
| int | compare_iu (str_piece text) const noexcept |
| Сравнение строк посимвольно без учёта регистра Unicode символов первой плоскости (<0xFFFF). | |
| bool | equal_iu (str_piece text) const noexcept |
| Равна ли строка другой строке посимвольно без учёта регистра Unicode символов первой плоскости (<0xFFFF). | |
| bool | less_iu (str_piece text) const noexcept |
| Меньше ли строка другой строки посимвольно без учёта регистра Unicode символов первой плоскости (<0xFFFF). | |
| bool | starts_with_iu (str_piece prefix) const noexcept |
| Начинается ли строка с заданной подстроки без учёта регистра Unicode символов первой плоскости (<0xFFFF). | |
| constexpr bool | ends_with_iu (str_piece suffix) const noexcept |
| Заканчивается ли строка указанной подстрокой без учёта регистра Unicode символов первой плоскости (<0xFFFF). | |
| R | upperred () const |
| Получить копию строки в верхнем регистре Unicode символов первой плоскости (<0xFFFF). | |
| R | lowered () const |
| Получить копию строки в нижнем регистре Unicode символов первой плоскости (<0xFFFF). | |
| std::optional< double > | to_double () const noexcept |
| Преобразовать строку в double. | |
| void | as_number (double &t) const |
| Преобразовать строку в double. | |
| constexpr void | as_number (T &t) const |
| Преобразовать строку в целое число. | |
| constexpr K * | place (K *ptr) const noexcept |
| Копировать строку в указанный буфер. | |
| void | copy_to (K *buffer, size_t bufSize) |
| Копировать строку в указанный буфер. | |
| constexpr size_t | size () const |
| Размер строки в символах. | |
| constexpr std::basic_string_view< D > | to_sv () const noexcept |
| Конвертировать в std::basic_string_view. | |
| constexpr | operator std::basic_string_view< D, Traits > () const |
| Конвертировать в std::basic_string_view. | |
| constexpr std::basic_string< D, Traits, Allocator > | to_string () const |
| Конвертировать в std::basic_string. | |
| constexpr | operator std::basic_string< D, Traits, Allocator > () const |
| Конвертировать в std::basic_string. | |
| constexpr | operator str_piece () const noexcept |
| Преобразовать себя в "кусок строки", включающий всю строку. | |
| constexpr str_piece | to_str () const noexcept |
| Преобразовать себя в "кусок строки", включающий всю строку. | |
| constexpr str_piece | operator() (ptrdiff_t from, ptrdiff_t len=0) const noexcept |
| Получить часть строки как "str_src". | |
| constexpr str_piece | mid (size_t from, size_t len=-1) const noexcept |
| Получить часть строки как "кусок строки". | |
| constexpr str_piece | from_to (size_t from, size_t to) const noexcept |
| Получить подстроку str_src с позиции от from до позиции to (не включая её). | |
| constexpr bool | operator! () const noexcept |
| Проверка на пустоту. | |
| constexpr K | at (ptrdiff_t idx) const |
| Получить символ на заданной позиции . | |
| constexpr int | compare (str_piece o) const |
| Сравнение строк посимвольно. | |
| constexpr int | strcmp (const K *text) const |
| Сравнение с C-строкой посимвольно. | |
| constexpr bool | equal (str_piece other) const noexcept |
| Сравнение строк на равенство. | |
| constexpr bool | operator== (const base &other) const noexcept |
| Оператор сравнение строк на равенство. | |
| constexpr bool | operator== (T &&other) const noexcept |
| Оператор сравнения строки и строкового литерала на равенство. | |
| constexpr auto | operator<=> (const base &other) const noexcept |
| Оператор сравнения строк. | |
| constexpr auto | operator<=> (T &&other) const noexcept |
| Оператор сравнения строки и строкового литерала. | |
| constexpr int | compare_ia (str_piece text) const noexcept |
| Сравнение строк посимвольно без учёта регистра ASCII символов. | |
| constexpr bool | equal_ia (str_piece text) const noexcept |
| Равна ли строка другой строке посимвольно без учёта регистра ASCII символов. | |
| constexpr bool | less_ia (str_piece text) const noexcept |
| Меньше ли строка другой строки посимвольно без учёта регистра ASCII символов. | |
| constexpr size_t | find (str_piece pattern, size_t offset=0) const noexcept |
| Найти начало первого вхождения подстроки в этой строке. | |
| constexpr size_t | find (K s, size_t offset=0) const noexcept |
| Найти символ в этой строке. | |
| constexpr size_t | find_or_throw (str_piece pattern, size_t offset=0, Args &&... args) const noexcept |
| Найти начало первого вхождения подстроки в этой строке или выкинуть исключение. | |
| constexpr size_t | find_end (str_piece pattern, size_t offset=0) const noexcept |
| Найти конец вхождения подстроки в этой строке. | |
| constexpr size_t | find_or_all (str_piece pattern, size_t offset=0) const noexcept |
| Найти начало первого вхождения подстроки в этой строке или конец строки. | |
| constexpr size_t | find_or_all (K s, size_t offset=0) const noexcept |
| Найти символ в этой строке или конец строки. | |
| constexpr size_t | find_end_or_all (str_piece pattern, size_t offset=0) const noexcept |
| Найти конец первого вхождения подстроки в этой строке или конец строки. | |
| constexpr size_t | find_last (str_piece pattern, size_t offset=-1) const noexcept |
| Найти начало последнего вхождения подстроки в этой строке. | |
| constexpr size_t | find_last (K s, size_t offset=-1) const noexcept |
| Найти последнее вхождения символа в этой строке. | |
| constexpr size_t | find_end_of_last (str_piece pattern, size_t offset=-1) const noexcept |
| Найти конец последнего вхождения подстроки в этой строке. | |
| constexpr size_t | find_last_or_all (str_piece pattern, size_t offset=-1) const noexcept |
| Найти начало последнего вхождения подстроки в этой строке или конец строки. | |
| constexpr size_t | find_end_of_last_or_all (str_piece pattern, size_t offset=-1) const noexcept |
| Найти конец последнего вхождения подстроки в этой строке или конец строки. | |
| constexpr bool | contains (str_piece pattern, size_t offset=0) const noexcept |
| Содержит ли строка указанную подстроку. | |
| constexpr void | for_all_finded (const Op &op, str_piece pattern, size_t offset=0, size_t maxCount=0) const |
| Вызвать функтор для всех найденных вхождений подстроки в этой строке. | |
| constexpr To | find_all (str_piece pattern, size_t offset=0, size_t maxCount=0) const |
| Найти все вхождения подстроки в этой строке. | |
| constexpr size_t | find_first_of (str_piece pattern, size_t offset=0) const noexcept |
| Найти первое вхождение символа из заданного набора символов. | |
| constexpr std::pair< size_t, size_t > | find_first_of_idx (str_piece pattern, size_t offset=0) const noexcept |
| Найти первое вхождение символа из заданного набора символов. | |
| constexpr size_t | find_first_not_of (str_piece pattern, size_t offset=0) const noexcept |
| Найти первое вхождение символа не из заданного набора символов. | |
| constexpr size_t | find_last_of (str_piece pattern, size_t offset=str::npos) const noexcept |
| Найти последнее вхождение символа из заданного набора символов. | |
| constexpr std::pair< size_t, size_t > | find_last_of_idx (str_piece pattern, size_t offset=str::npos) const noexcept |
| Найти последнее вхождение символа из заданного набора символов. | |
| constexpr size_t | find_last_not_of (str_piece pattern, size_t offset=str::npos) const noexcept |
| Найти последнее вхождение символа не из заданного набора символов. | |
| constexpr my_type | substr (ptrdiff_t from, ptrdiff_t len=0) const |
| Получить подстроку. Работает аналогично operator(), только результат выдает того же типа, к которому применён метод. | |
| constexpr my_type | str_mid (size_t from, size_t len=-1) const |
| Получить часть строки объектом того же типа, к которому применён метод, аналогично mid. | |
| constexpr T | as_int () const noexcept |
| Преобразовать строку в число заданного типа. | |
| constexpr convert_result< T > | to_int () const noexcept |
| Преобразовать строку в число заданного типа. | |
| std::optional< double > | to_double_hex () const noexcept |
| Преобразовать строку в 16ричной записи в double. Пока работает только для char. | |
| constexpr T | splitf (str_piece delimiter, const Op &beforeFunc, size_t offset=0) const |
| Разделить строку на части по заданному разделителю, с возможным применением функтора к каждой подстроке. | |
| constexpr T | split (str_piece delimiter, size_t offset=0) const |
| Разделить строку на подстроки по заданному разделителю. | |
| constexpr bool | starts_with (str_piece prefix) const noexcept |
| Начинается ли строка с заданной подстроки. | |
| constexpr bool | starts_with_ia (str_piece prefix) const noexcept |
| Начинается ли строка с заданной подстроки без учёта регистра ASCII символов. | |
| constexpr bool | prefix_in (str_piece text) const noexcept |
| Является ли эта строка началом другой строки. | |
| constexpr bool | ends_with (str_piece suffix) const noexcept |
| Заканчивается ли строка указанной подстрокой. | |
| constexpr bool | ends_with_ia (str_piece suffix) const noexcept |
| Заканчивается ли строка указанной подстрокой без учёта регистра ASCII символов. | |
| constexpr bool | is_ascii () const noexcept |
| Содержит ли строка только ASCII символы. | |
| R | upperred_only_ascii () const |
| Получить копию строки в верхнем регистре ASCII символов. | |
| R | lowered_only_ascii () const |
| Получить копию строки в нижнем регистре ASCII символов. | |
| R | replaced (str_piece pattern, str_piece repl, size_t offset=0, size_t maxCount=0) const |
| Получить копию строки с заменёнными вхождениями подстрок. | |
| constexpr R | trimmed () const |
| Получить строку с удалением пробельных символов слева и справа. | |
| R | trimmed (T &&pattern) const |
| Получить строку с удалением символов, заданных строковым литералом, слева и справа. | |
| R | trimmed (str_piece pattern) const |
| Получить строку с удалением символов, заданных другой строкой, слева и справа. | |
| R | trimmed_left () const |
| Получить строку с удалением пробельных символов слева. | |
| R | trimmed_left (T &&pattern) const |
| Получить строку с удалением символов, заданных строковым литералом, слева. | |
| R | trimmed_left (str_piece pattern) const |
| Получить строку с удалением символов, заданных другой строкой, слева. | |
| R | trimmed_right () const |
| Получить строку с удалением пробельных символов справа. | |
| R | trimmed_right (T &&pattern) const |
| Получить строку с удалением символов, заданных строковым литералом, справа. | |
| R | trimmed_right (str_piece pattern) const |
| Получить строку с удалением символов, заданных другой строкой, справа. | |
| R | trimmed_with_spaces (T &&pattern) const |
| Получить строку с удалением символов, заданных строковым литералом, а также пробельных символов, слева и справа. | |
| R | trimmed_with_spaces (str_piece pattern) const |
| Получить строку с удалением символов, заданных другой строкой, а также пробельных символов, слева и справа. | |
| R | trimmed_left_with_spaces (T &&pattern) const |
| Получить строку с удалением символов, заданных строковым литералом, а также пробельных символов, слева. | |
| R | trimmed_left_with_spaces (str_piece pattern) const |
| Получить строку с удалением символов, заданных другой строкой, а также пробельных символов, слева. | |
| R | trimmed_right_with_spaces (T &&pattern) const |
| Получить строку с удалением символов, заданных строковым литералом, а также пробельных символов, справа. | |
| R | trimmed_right_with_spaces (str_piece pattern) const |
| Получить строку с удалением символов, заданных другой строкой, а также пробельных символов, справа. | |
| constexpr SplitterBase< K, str_piece > | splitter (str_piece delimiter) const |
Получить объект Splitter по заданному разделителю, который позволяет последовательно получать подстроки методом next(), пока is_done() false. | |
| operator K* () noexcept | |
| Получить указатель на буфер строки. | |
| lstring< K, N, false, allocator_string > & | trim () |
| Удалить пробельные символы в начале и в конце строки. | |
| lstring< K, N, false, allocator_string > & | trim (T &&pattern) |
| Удалить символы, входящие в строковый литерал, в начале и в конце строки. | |
| lstring< K, N, false, allocator_string > & | trim (str_piece pattern) |
| Удалить символы, входящие в переданную строку, в начале и в конце строки. | |
| lstring< K, N, false, allocator_string > & | trim_left () |
| Удалить пробельные символы в начале строки. | |
| lstring< K, N, false, allocator_string > & | trim_left (T &&pattern) |
| Удалить символы, входящие в строковый литерал, в начале строки. | |
| lstring< K, N, false, allocator_string > & | trim_left (str_piece pattern) |
| Удалить символы, входящие в переданную строку, в начале строки. | |
| lstring< K, N, false, allocator_string > & | trim_right () |
| Удалить пробельные символы в конце строки. | |
| lstring< K, N, false, allocator_string > & | trim_right (T &&pattern) |
| Удалить символы, входящие в строковый литерал, в конце строки. | |
| lstring< K, N, false, allocator_string > & | trim_right (str_piece pattern) |
| Удалить символы, входящие в переданную строку, в конце строки. | |
| lstring< K, N, false, allocator_string > & | trim_with_spaces (T &&pattern) |
| Удалить символы, входящие в строковый литерал, а также пробельные символы, в начале и в конце строки. | |
| lstring< K, N, false, allocator_string > & | trim_with_spaces (str_piece pattern) |
| Удалить символы, входящие в переданную строку, а также пробельные символы, в начале и в конце строки. | |
| lstring< K, N, false, allocator_string > & | trim_left_with_spaces (T &&pattern) |
| Удалить символы, входящие в строковый литерал, а также пробельные символы, в начале строки. | |
| lstring< K, N, false, allocator_string > & | trim_left_with_spaces (str_piece pattern) |
| Удалить символы, входящие в переданную строку, а также пробельные символы, в начале строки. | |
| lstring< K, N, false, allocator_string > & | trim_right_with_wpaces (T &&pattern) |
| Удалить символы, входящие в строковый литерал, а также пробельные символы, в конце строки. | |
| lstring< K, N, false, allocator_string > & | trim_right_with_spaces (str_piece pattern) |
| Удалить символы, входящие в переданную строку, а также пробельные символы, в конце строки. | |
| lstring< K, N, false, allocator_string > & | upper_only_ascii () |
| Преобразовать в верхний регистр ASCII символы. | |
| lstring< K, N, false, allocator_string > & | lower_only_ascii () |
| Преобразовать в нижний регистр ASCII символы. | |
| lstring< K, N, false, allocator_string > & | upper () |
| Преобразовать в верхний регистр Unicode символы первой плоскости (<0xFFFF). | |
| lstring< K, N, false, allocator_string > & | lower () |
| Преобразовать в нижний регистр Unicode символы первой плоскости (<0xFFFF). | |
| lstring< K, N, false, allocator_string > & | append (str_piece other) |
| Добавить другую строку в конец строки. | |
| lstring< K, N, false, allocator_string > & | append (const A &expr) |
| Добавить строковое выражение в конец строки. | |
| lstring< K, N, false, allocator_string > & | operator+= (str_piece other) |
| Добавить другую строку в конец строки. | |
| lstring< K, N, false, allocator_string > & | operator+= (const A &expr) |
| Добавить строковое выражение в конец строки. | |
| lstring< K, N, false, allocator_string > & | append_in (size_t pos, str_piece other) |
| Добавить другую строку, начиная с заданной позиции. | |
| lstring< K, N, false, allocator_string > & | append_in (size_t pos, const A &expr) |
| Добавить строковое выражение, начиная с заданной позиции. | |
| lstring< K, N, false, allocator_string > & | change (size_t from, size_t len, str_piece other) |
| Заменить кусок строки на другую строку. | |
| lstring< K, N, false, allocator_string > & | change (size_t from, size_t len, const A &expr) |
| Заменить кусок строки на строковое выражение. | |
| lstring< K, N, false, allocator_string > & | insert (size_t to, str_piece other) |
| Вставить строку в указанную позицию. | |
| lstring< K, N, false, allocator_string > & | insert (size_t to, const A &expr) |
| Вставить строковое выражение в указанную позицию. | |
| lstring< K, N, false, allocator_string > & | remove (size_t from, size_t len) |
| Удалить часть строки. | |
| lstring< K, N, false, allocator_string > & | prepend (str_piece other) |
| Добавить другую строку в начало строки. | |
| lstring< K, N, false, allocator_string > & | prepend (const A &expr) |
| Добавить строковое выражение в начало строки. | |
| lstring< K, N, false, allocator_string > & | replace (str_piece pattern, str_piece repl, size_t offset=0, size_t maxCount=0) |
| Заменить вхождения подстроки на другую строку. | |
| lstring< K, N, false, allocator_string > & | replace_from (const From &f, str_piece pattern, str_piece repl, size_t offset=0, size_t maxCount=0) |
| Скопировать строку-источник, заменив вхождения подстрок на другую строку. | |
| lstring< K, N, false, allocator_string > & | fill (size_t from, const Op &fillFunction) |
| Заполнение буфера строки с помощью функтора. | |
| lstring< K, N, false, allocator_string > & | operator<< (const Op &fillFunction) |
| Заполняет строку методом fill с нулевой позиции. | |
| lstring< K, N, false, allocator_string > & | operator<< (const Op &fillFunction) |
| Вызывает переданный функтор, передав ссылку на себя. | |
| lstring< K, N, false, allocator_string > & | operator<<= (const Op &fillFunction) |
| Заполняет строку методом fill после конца строки. | |
| lstring< K, N, false, allocator_string > & | printf_from (size_t from, const K *format, T &&... args) |
| Добавляет отформатированный с помощью sprintf вывод, начиная с указанной позиции. | |
| lstring< K, N, false, allocator_string > & | printf (const K *format, T &&... args) |
| Форматирует строку помощью sprintf. | |
| lstring< K, N, false, allocator_string > & | append_printf (const K *format, T &&... args) |
| Добавляет отформатированный с помощью sprintf вывод в конец строки. | |
| lstring< K, N, false, allocator_string > & | format_from (size_t from, const FmtString< fmt_type, T... > &format, T &&... args) |
| Добавляет отформатированный с помощью std::format вывод, начиная с указанной позиции. | |
| lstring< K, N, false, allocator_string > & | vformat_from (size_t from, size_t max_write, str_piece format, T &&... args) |
| Добавляет отформатированный с помощью std::vformat вывод, начиная с указанной позиции. | |
| lstring< K, N, false, allocator_string > & | format (const FmtString< fmt_type, T... > &pattern, T &&... args) |
| Форматирует строку с помощью std::format. | |
| lstring< K, N, false, allocator_string > & | append_formatted (const FmtString< fmt_type, T... > &format, T &&... args) |
| Добавляет отформатированный с помощью std::format вывод в конец строки. | |
| lstring< K, N, false, allocator_string > & | vformat (str_piece format, T &&... args) |
| Форматирует строку с помощью std::vformat. | |
| lstring< K, N, false, allocator_string > & | append_vformatted (str_piece format, T &&... args) |
| Добавляет отформатированный с помощью std::vformat вывод в конец строки. | |
| lstring< K, N, false, allocator_string > & | vformat_n (size_t max_write, str_piece format, T &&... args) |
| Форматирует строку с помощью std::vformat не более указанного размера. | |
| lstring< K, N, false, allocator_string > & | append_vformatted_n (size_t max_write, str_piece format, T &&... args) |
| Добавляет отформатированный с помощью std::vformat вывод в конец строки, записывая не более указанного количества символов. | |
| lstring< K, N, false, allocator_string > & | with (const Op &fillFunction, Args &&... args) |
| Вызов функтора со строкой и переданными аргументами. | |
| constexpr | operator const K * () const noexcept |
| Оператор преобразования в нуль-терминированную C-строку. | |
| constexpr s_str_nt | to_nts (size_t from=0) const |
| Получить simple_str_nt, начиная с заданного символа. | |
| constexpr | operator s_str_nt () const |
| Преобразовать в simple_str_nt. | |
| constexpr const K * | c_str () const |
| Получить указатель на константный буфер символов строки | |
Открытые статические члены | |
| static my_type | join (const T &strings, s_str delimiter, bool tail=false, bool skip_empty=false, Args &&... args) |
| Конкатенация строк из контейнера в одну строку. | |
| static my_type | upperred_only_ascii_from (const From &f, Args &&... args) |
| Создать строку, копию переданной в верхнем регистре символов ASCII. | |
| static my_type | lowered_only_ascii_from (const From &f, Args &&... args) |
| Создать копию переданной строки в нижнем регистре символов ASCII. | |
| static my_type | upperred_from (const From &f, Args &&... args) |
| Создать копию переданной строки в верхнем регистре символов Unicode первой плоскости (<0xFFFF). | |
| static my_type | lowered_from (const From &f, Args &&... args) |
| Создать копию переданной строки в нижнем регистре символов Unicode первой плоскости (<0xFFFF). | |
| static my_type | replaced_from (const From &f, s_str pattern, s_str repl, size_t offset=0, size_t maxCount=0, Args &&... args) |
| Создать копию переданной строки с заменой подстрок. | |
Защищенные члены | |
| constexpr allocator_t & | allocator () |
| Получить аллокатор. | |
| constexpr void | init_from_str_other (s_str other) |
| Инициализация из другого строкового объекта. | |
| constexpr void | init_str_repeat (size_t repeat, s_str pattern) |
| Инициализация повторением строки. | |
| constexpr void | init_symb_repeat (size_t count, K pad) |
| Инициализация повторением символа. | |
| constexpr void | init_str_expr (const A &expr) |
| Инициализация из строкового выражения. | |
| void | init_replaced (const From &f, s_str pattern, s_str repl, size_t offset=0, size_t maxCount=0) |
| Инициализация из строкового источника с заменой. | |
Класс мутабельной, владеющей строки. Содержит внутренний буфер для строк заданного размера.
| K | - тип символа. |
| N | - размер внутреннего строкового буфера не менее N. |
| forShared | - аллоцировать внешний буфер в формате, совместимом с sstring. |
| Allocator | - тип аллокатора. |
"Локальная" строка. Хранит в себе указатель на символы и длину строки, а за ней либо сами данные до N символов + нуль, либо если данные длиннее N, то размер выделенного буфера. При этом, если планируется потом результат переместить в sstring, то для динамического буфера выделяется +n байтов, чтобы потом не копировать данные.
| anonymous enum : size_t |
|
inlineconstexprnoexcept |
Создать пустой объект.
| ...args | - параметры для инициализации аллокатора. |
|
inlineconstexpr |
Конструктор из другого строкового объекта.
| other | - другой строковый объект, simple_str. |
| ...args | - параметры для инициализации аллокатора. |
|
inlineconstexpr |
Конструктор повторения строки.
| repeat | - количество повторов. |
| pattern | - строка, которую надо повторить. |
| ...args | - параметры для инициализации аллокатора. |
|
inlineconstexpr |
Конструктор повторения символа.
| count | - количество повторов. |
| pad | - символ, который надо повторить. |
| ...args | - параметры для инициализации аллокатора. |
|
inlineconstexpr |
|
inlineconstexpr |
Конструктор из строкового источника с заменой.
| f | - строковый объект, из которого берётся исходная строка. |
| pattern | - подстрока, которую надо заменить. |
| repl | - строка, на которую надо заменить. |
| offset | - начальная позиция для поиска подстрок. |
| maxCount | - максимальное количество замен, 0 - без ограничений. |
| ...args | - параметры для инициализации аллокатора. |
|
inlineconstexpr |
Копирование из другой строки такого же типа.
| other | - другая строка. |
|
inlineconstexpr |
Копирование из другой строки такого же типа, но с другим аллокатором.
| other | - другая строка. |
| ...args | - параметры для инициализации аллокатора. |
|
inlineconstexpr |
Конструктор из строкового литерала.
| value | - строковый литерал. |
| ...args | - параметры для инициализации аллокатора. |
|
inlineconstexprnoexcept |
Конструктор перемещения из строки такого же типа.
| other | - другая строка. |
|
inline |
Конструктор заполнения с помощью функтора (см. str_mutable::fill).
| op | - функтов заполнения. |
| ...args | - параметры для инициализации аллокатора. |
|
inlineinherited |
Добавить строковое выражение в конец строки.
| expr | - строковое выражение. |
|
inlineinherited |
Добавить другую строку в конец строки.
| other | - другая строка. |
|
inlineinherited |
Добавляет отформатированный с помощью std::format вывод в конец строки.
| format | - форматная строка, константная. |
| ...args | - аргументы для std::format. |
При необходимости автоматически увеличивает размер буфера строки.
|
inlineinherited |
Добавить строковое выражение, начиная с заданной позиции.
| pos | - позиция, с которой добавлять. Сначала строка укорачивается до заданного размера, а потом добавляется строковое выражение. |
| expr | - строковое выражение. |
Если строка длиннееpos, то она укорачивается до этого размера, а потом добавляется expr.
|
inlineinherited |
Добавить другую строку, начиная с заданной позиции.
| pos | - позиция, с которой добавлять. Сначала строка укорачивается до заданного размера, а потом добавляется другая строка. |
| other | - другая строка. |
Если строка длиинееpos, то она укорачивается до этого размера, а потом добавляется other.
|
inlineinherited |
Добавляет отформатированный с помощью sprintf вывод в конец строки.
| format | - форматная строка. |
| ...args | - аргументы для sprintf. |
При необходимости автоматически увеличивает размер буфера строки.
|
inlineinherited |
Добавляет отформатированный с помощью std::vformat вывод в конец строки.
| format | - форматная строка. |
| ... | - аргументы для std::vformat. |
При необходимости автоматически увеличивает размер буфера строки.
|
inlineinherited |
Добавляет отформатированный с помощью std::vformat вывод в конец строки, записывая не более указанного количества символов.
| max_write | - максимальное количество записываемых символов. |
| format | - форматная строка. |
| ...args | - аргументы для std::vformat. |
При необходимости автоматически увеличивает размер буфера строки.
|
inlineconstexprnoexceptinherited |
Преобразовать строку в число заданного типа.
| T | - желаемый тип числа. |
| CheckOverflow | - проверять на переполнение. |
| Base | - основание счисления числа, от -1 до 36, кроме 1.
|
| SkipWs | - пропускать пробельные символы в начале строки. |
| AllowSign | - допустим ли знак '+' перед числом. |
|
inlineinherited |
Преобразовать строку в double.
| t | - переменная, в которую записывается результат. |
|
inlineconstexprinherited |
Преобразовать строку в целое число.
Так как as_number(double& t) перекрывает видимость as_number из базового класса, придётся добавить его ещё раз.
| T | - тип числа, выводится из аргумента. |
| t | - переменная, в которую записывается результат. |
|
inlineconstexprinherited |
Получить символ на заданной позиции .
| idx | - индекс символа. Для отрицательных значений отсчитывается от конца строки. |
Не производит проверку на выход за границы строки.
|
inlineconstexprinherited |
Получить указатель на константный буфер символов строки
|
inlineinherited |
Заменить кусок строки на строковое выражение.
| from | - начальная позиция для замены. |
| len | - длина заменяемой части. |
| expr | - строковое выражение. |
|
inlineinherited |
Заменить кусок строки на другую строку.
| from | - начальная позиция для замены. |
| len | - длина заменяемой части. |
| other | - строка, на которую эта часть меняется . |
|
inlineconstexprinherited |
Сравнение строк посимвольно.
| o | - другая строка. |
|
inlineconstexprnoexceptinherited |
Сравнение строк посимвольно без учёта регистра ASCII символов.
| text | - другая строка. |
|
inlinenoexceptinherited |
Сравнение строк посимвольно без учёта регистра Unicode символов первой плоскости (<0xFFFF).
| text | - другая строка. |
|
inlineconstexprnoexceptinherited |
Содержит ли строка указанную подстроку.
| pattern | - искомая строка. |
| offset | - с какой позиции начинать поиск. |
|
inlineinherited |
Копировать строку в указанный буфер.
Метод добавляет \0 после скопированных символов. Не выходит за границы буфера.
| buffer | - указатель на буфер |
| bufSize | - размер буфера в символах. |
|
inlineconstexprnoexceptinherited |
Заканчивается ли строка указанной подстрокой.
| suffix | - подстрока. |
|
inlineconstexprnoexceptinherited |
Заканчивается ли строка указанной подстрокой без учёта регистра ASCII символов.
| suffix | - подстрока. |
|
inlineconstexprnoexceptinherited |
Заканчивается ли строка указанной подстрокой без учёта регистра Unicode символов первой плоскости (<0xFFFF).
| suffix | - подстрока. |
|
inlineconstexprnoexceptinherited |
Сравнение строк на равенство.
| other | - другая строка. |
|
inlineconstexprnoexceptinherited |
Равна ли строка другой строке посимвольно без учёта регистра ASCII символов.
| text | - другая строка. |
|
inlinenoexceptinherited |
Равна ли строка другой строке посимвольно без учёта регистра Unicode символов первой плоскости (<0xFFFF).
| text | - другая строка. |
|
inlineinherited |
Заполнение буфера строки с помощью функтора.
| from | - начальная позиция для заполнения. |
| fillFunction | - size_t(K*, size_t) функтор, получающий адрес буфера строки и его ёмкость, возвращающий необходимый размер строки. |
Функция вызывает функтор, передавая ему адрес буфера строки и его ёмкость. Функтор может изменять буфер в пределах выделенной ёмкости, и должен вернуть размер итоговой строки. Пока возвращаемый размер больше ёмкости (т.е. строка не может поместиться в буфер), выделятся память как минимум возвращенного размера, и функтор вызывается снова. До тех пор, пока возвращённый размер не будет помещаться в буфер строки. Этот размер и становится длиной строки.
|
inlineconstexprnoexceptinherited |
Найти символ в этой строке.
| s | - искомый символ. |
| offset | - с какой позиции начинать поиск. |
|
inlineconstexprnoexceptinherited |
Найти начало первого вхождения подстроки в этой строке.
| pattern | - искомая строка. |
| offset | - с какой позиции начинать поиск. |
|
inlineconstexprinherited |
Найти все вхождения подстроки в этой строке.
| pattern | - искомая подстрока. |
| offset | - позиция начала поиска. |
| maxCount | - максимальное количество обрабатываемых вхождений, 0 - без ограничений. |
|
inlineconstexprnoexceptinherited |
Найти конец вхождения подстроки в этой строке.
| pattern | - искомая строка. |
| offset | - с какой позиции начинать поиск. |
|
inlineconstexprnoexceptinherited |
Найти конец последнего вхождения подстроки в этой строке.
| pattern | - искомая строка. |
| offset | - c какой позиции вести поиск в обратную сторону, -1 - с самого конца. |
|
inlineconstexprnoexceptinherited |
Найти конец последнего вхождения подстроки в этой строке или конец строки.
| pattern | - искомая строка. |
| offset | - c какой позиции вести поиск в обратную сторону, -1 - с самого конца. |
|
inlineconstexprnoexceptinherited |
Найти конец первого вхождения подстроки в этой строке или конец строки.
| pattern | - искомая строка. |
| offset | - с какой позиции начинать поиск. |
|
inlineconstexprnoexceptinherited |
Найти первое вхождение символа не из заданного набора символов.
| pattern | - строка, задающая набор символов. |
| offset | - позиция начала поиска. |
|
inlineconstexprnoexceptinherited |
Найти первое вхождение символа из заданного набора символов.
| pattern | - строка, задающая набор искомых символов. |
| offset | - позиция начала поиска. |
|
inlineconstexprnoexceptinherited |
Найти первое вхождение символа из заданного набора символов.
| pattern | - строка, задающая набор искомых символов. |
| offset | - позиция начала поиска. |
|
inlineconstexprnoexceptinherited |
Найти последнее вхождения символа в этой строке.
| s | - искомый символ. |
| offset | - c какой позиции вести поиск в обратную сторону, -1 - с самого конца. |
|
inlineconstexprnoexceptinherited |
Найти начало последнего вхождения подстроки в этой строке.
| pattern | - искомая строка. |
| offset | - c какой позиции вести поиск в обратную сторону, -1 - с самого конца. |
|
inlineconstexprnoexceptinherited |
Найти последнее вхождение символа не из заданного набора символов.
| pattern | - строка, задающая набор символов. |
| offset | - позиция начала поиска. |
|
inlineconstexprnoexceptinherited |
Найти последнее вхождение символа из заданного набора символов.
| pattern | - строка, задающая набор искомых символов. |
| offset | - позиция начала поиска. |
|
inlineconstexprnoexceptinherited |
Найти последнее вхождение символа из заданного набора символов.
| pattern | - строка, задающая набор искомых символов. |
| offset | - позиция начала поиска. |
|
inlineconstexprnoexceptinherited |
Найти начало последнего вхождения подстроки в этой строке или конец строки.
| pattern | - искомая строка. |
| offset | - c какой позиции вести поиск в обратную сторону, -1 - с самого конца. |
|
inlineconstexprnoexceptinherited |
Найти символ в этой строке или конец строки.
| s | - искомый символ. |
| offset | - с какой позиции начинать поиск. |
|
inlineconstexprnoexceptinherited |
Найти начало первого вхождения подстроки в этой строке или конец строки.
| pattern | - искомая строка. |
| offset | - с какой позиции начинать поиск. |
|
inlineconstexprnoexceptinherited |
Найти начало первого вхождения подстроки в этой строке или выкинуть исключение.
| Exc | - тип исключения. |
| Args... | - типы параметров для конструирования исключения, выводятся из аргументов. |
| pattern | - искомая строка. |
| offset | - с какой позиции начинать поиск. |
| args | - аргументы для конструктора исключения. |
|
inlineconstexprinherited |
Вызвать функтор для всех найденных вхождений подстроки в этой строке.
| op | - функтор, принимающий строку. |
| pattern | - искомая подстрока. |
| offset | - позиция начала поиска. |
| maxCount | - максимальное количество обрабатываемых вхождений, 0 - без ограничений. |
|
inlineinherited |
Форматирует строку с помощью std::format.
| pattern | - форматная строка, константная. |
| ...args | - аргументы для std::format. |
При необходимости автоматически увеличивает размер буфера строки.
|
inlineinherited |
Добавляет отформатированный с помощью std::format вывод, начиная с указанной позиции.
| from | - начальная позиция добавления. |
| format | - форматная строка, константная. |
| ...args | - аргументы для std::format. |
При необходимости автоматически увеличивает размер буфера строки.
|
inlineconstexprnoexceptinherited |
Получить подстроку str_src с позиции от from до позиции to (не включая её).
Для производительности метод никак не проверяет выходы за границы строки, используйте в сценариях, когда точно знаете, что это позиции внутри строки и to >= from.
| from | - начальная позиция. |
| to | - конечная позиция (не входит в результат). |
|
inlineconstexprprotectedinherited |
Инициализация из другого строкового объекта.
| other | - другой строковый объект, simple_str. |
|
inlineprotectedinherited |
Инициализация из строкового источника с заменой.
| f | - строковый объект, из которого берётся исходная строка. |
| pattern | - подстрока, которую надо заменить. |
| repl | - строка, на которую надо заменить. |
| offset | - начальная позиция для поиска подстрок. |
| maxCount | - максимальное количество замен, 0 - без ограничений. |
|
inlineconstexprprotectedinherited |
|
inlineconstexprprotectedinherited |
Инициализация повторением строки.
| repeat | - количество повторов. |
| pattern | - строка, которую надо повторить. |
|
inlineconstexprprotectedinherited |
Инициализация повторением символа.
| count | - количество повторов. |
| pad | - символ, который надо повторить. |
|
inlineinherited |
Вставить строковое выражение в указанную позицию.
| to | - позиция для вставки. |
| expr | - строковое выражение. |
|
inlineinherited |
Вставить строку в указанную позицию.
| to | - позиция для вставки. |
| other | - вставляемая строка. |
|
inlinestaticinherited |
Конкатенация строк из контейнера в одну строку.
| strings | - контейнер со строками. |
| delimiter | - разделитель, добавляемый между строками. |
| tail | - добавить разделитель после последней строки. |
| skip_empty | - пропускать пустые строки без добавления разделителя. |
| ...args | - параметры для инициализации аллокатора. |
Функция служит для слияния контейнера строк в одну строку с разделителем.
Стоит отметить, что при заранее известном разделителе лучше пользоваться строковым выражением e_join.
В этом случае компилятор может лучше оптимизировать код слияния строк.
|
inlineconstexprnoexceptinherited |
Меньше ли строка другой строки посимвольно без учёта регистра ASCII символов.
| text | - другая строка. |
|
inlinenoexceptinherited |
Меньше ли строка другой строки посимвольно без учёта регистра Unicode символов первой плоскости (<0xFFFF).
| text | - другая строка. |
|
inlineinherited |
Преобразовать в нижний регистр Unicode символы первой плоскости (<0xFFFF).
Регистр меняется упрощенными таблицами, где один code_point всегда меняется в один code_point (но для UTF-8 возможно, что длина в code unit'ах изменится).
|
inlineinherited |
Преобразовать в нижний регистр ASCII символы.
|
inlineinherited |
Получить копию строки в нижнем регистре Unicode символов первой плоскости (<0xFFFF).
| R | - желаемый тип строки, по умолчанию тот же, чей метод вызывался. |
|
inlinestaticinherited |
Создать копию переданной строки в нижнем регистре символов Unicode первой плоскости (<0xFFFF).
| f | - строка источник. |
| ...args | - параметры для инициализации аллокатора. |
Регистр меняется упрощенными таблицами, где один code_point всегда меняется в один code_point (но для UTF-8 возможно, что длина в code unit'ах изменится).
|
inlineinherited |
Получить копию строки в нижнем регистре ASCII символов.
| R | - желаемый тип строки, по умолчанию тот же, чей метод вызывался. |
|
inlinestaticinherited |
Создать копию переданной строки в нижнем регистре символов ASCII.
| f | - строка источник. |
| ...args | - параметры для инициализации аллокатора. |
|
inlineconstexprnoexceptinherited |
Получить часть строки как "кусок строки".
| from | - количество символов от начала строки. При превышении размера строки вернёт пустую строку. |
| len | - количество символов в получаемом "куске". При выходе за пределы строки вернёт всё до конца строки. |
|
inlineconstexprnoexceptinherited |
Оператор преобразования в нуль-терминированную C-строку.
|
inlineexplicitnoexceptinherited |
Получить указатель на буфер строки.
|
inlineconstexprinherited |
Преобразовать в simple_str_nt.
|
inlineconstexprinherited |
Конвертировать в std::basic_string.
|
inlineconstexprinherited |
Конвертировать в std::basic_string_view.
|
inlineconstexprnoexceptinherited |
Преобразовать себя в "кусок строки", включающий всю строку.
|
inlineconstexprnoexceptinherited |
Получить часть строки как "str_src".
| from | - количество символов от начала строки. |
| len | - количество символов в получаемом "куске". |
Если from меньше нуля, то отсчитывается -from символов от конца строки в сторону начала. Если len меньше или равно нулю, то отсчитать -len символов от конца строки
|
inlineinherited |
Добавить строковое выражение в конец строки.
| expr | - строковое выражение. |
|
inlineinherited |
Добавить другую строку в конец строки.
| other | - другая строка. |
|
inlineinherited |
Заполняет строку методом fill с нулевой позиции.
| fillFunction | - функтор заполнения строки, size_t(K*, size_t). |
|
inlineinherited |
Вызывает переданный функтор, передав ссылку на себя.
| fillFunction | - фуктор void(my_type&). |
|
inlineinherited |
Заполняет строку методом fill после конца строки.
| fillFunction | - функтор заполнения строки, size_t(K*, size_t). |
|
inlineconstexprnoexceptinherited |
Оператор сравнения строк.
| other | - другая строка. |
|
inlineconstexprnoexceptinherited |
Оператор сравнения строки и строкового литерала.
| other | - строковый литерал. |
|
inline |
Оператор присваивания копией из строки такого же типа.
| other | - другая строка. |
|
inline |
Оператор присваивания строкового выражения.
| expr | - строковое выражение, материализуемое в буфер строки. |
Если в строковом выражении что-либо ссылается на части этой же строки, то результат не определён.
|
inlinenoexcept |
Оператор присваивания перемещением из строки такого же типа.
| other | - другая строка. |
|
inline |
Оператор присваивания из simple_str.
| other | - другая строка. |
|
inline |
Оператор присваивания строкового литерала.
| other | - строковый литерал, копируется в буфер строки. |
|
inlineconstexprnoexceptinherited |
Оператор сравнение строк на равенство.
| other | - другая строка. |
|
inlineconstexprnoexceptinherited |
Оператор сравнения строки и строкового литерала на равенство.
| other | - строковый литерал. |
|
inlineconstexprnoexceptinherited |
Копировать строку в указанный буфер.
Метод предполагает, что размер выделенного буфера достаточен для всей строки, т.е. предварительно была запрошена length(). Не добавляет \0.
| ptr | - указатель на буфер. |
|
inlineconstexprnoexceptinherited |
Является ли эта строка началом другой строки.
| text | - другая строка. |
|
inlineinherited |
Добавить строковое выражение в начало строки.
| expr | - строковое выражение. |
|
inlineinherited |
Добавить другую строку в начало строки.
| other | - другая строка. |
|
inlineinherited |
Форматирует строку помощью sprintf.
| format | - форматная строка. |
| ...args | - аргументы для sprintf. |
При необходимости автоматически увеличивает размер буфера строки.
|
inlineinherited |
Добавляет отформатированный с помощью sprintf вывод, начиная с указанной позиции.
| from | - начальная позиция добавления. |
| format | - форматная строка. |
| ...args | - аргументы для sprintf. |
При необходимости автоматически увеличивает размер буфера строки.
|
inlineinherited |
Удалить часть строки.
| from | - позиция, с которой удалить. |
| len | - длина удаляемой части. |
|
inlineinherited |
Заменить вхождения подстроки на другую строку.
| pattern | - искомая подстрока. |
| repl | - строка замены. |
| offset | - начальная позиция для поиска. |
| maxCount | - максимальное количество замен, 0 - без ограничений. |
|
inlineinherited |
Скопировать строку-источник, заменив вхождения подстрок на другую строку.
| f | - строка-источник. |
| pattern | - искомая подстрока. |
| repl | - строка замены. |
| offset | - начальная позиция для поиска. |
| maxCount | - максимальное количество замен, 0 - без ограничений. |
|
inlineinherited |
Получить копию строки с заменёнными вхождениями подстрок.
| R | - желаемый тип строки, по умолчанию тот же, чей метод вызывался. |
| pattern | - искомая подстрока. |
| repl | - строка, на которую заменять. |
| offset | - начальная позиция поиска. |
| maxCount | - максимальное количество замен, 0 - без ограничений. |
|
inlinestaticinherited |
Создать копию переданной строки с заменой подстрок.
| f | - строка источник. |
| pattern | - подстрока, которую надо заменить. |
| repl | - строка, на которую надо заменить. |
| offset | - начальная позиция для поиска подстрок. |
| maxCount | - максимальное количество замен, 0 - без ограничений. |
| ...args | - параметры для инициализации аллокатора. |
|
inlineconstexpr |
Выделить буфер, достаточный для размещения newSize символов плюс завершающий ноль.
| newSize | - новый размер строки. |
Содержимое строки сохраняется. При увеличении буфера размер выделяется не больше запрошенного. Размер строки устанавливается в newSize.
|
inlineconstexpr |
Выделить буфер, достаточный для размещения newSize символов плюс завершающий ноль.
| newSize | - новый размер строки. |
Содержимое буфера не определено, и не гарантируется сохранение старого содержимого. Размер строки устанавливается в newSize.
|
inlineconstexpr |
Устанавливает размер текущей строки, при необходимости выделяя место.
| newSize | - новый размер строки. |
Содержимое строки сохраняется. При увеличении буфера размер выделяется не менее чем 2 старого размера буфера. Размер строки устанавливается в newSize.
|
inlineconstexprinherited |
Размер строки в символах.
|
inlineconstexprinherited |
Разделить строку на подстроки по заданному разделителю.
| T | - тип контейнера для результата. |
| delimiter | - разделитель. |
| offset | - позиция начала поиска разделителя. |
|
inlineconstexprinherited |
Разделить строку на части по заданному разделителю, с возможным применением функтора к каждой подстроке.
| T | - тип контейнера для складывания подстрок. |
| delimiter | - подстрока разделитель. |
| beforeFunc | - функтор для применения к найденным подстрокам, перед помещением их в результат. |
| offset | - позиция начала поиска разделителя. |
Для каждой найденной подстроки, если функтор может принять её, вызывается функтор, и подстрока присваивается результату функтора. Далее подстрока пытается добавиться в результат, вызывая один из его методов - emplace_back, push_back, operator[]. Если ни одного этого метода нет, ничего не делается, только вызов функтора. operator[] пытается применится, если у результата можно получить размер через std::size и мы не выходим за этот размер. При этом, если найденная подстрока получается совпадающей со всей строкой - в результат пытается поместить не подстроку, а весь объект строки, что позволяет, например, эффективно копировать sstring.
|
inlineconstexprinherited |
Получить объект Splitter по заданному разделителю, который позволяет последовательно получать подстроки методом next(), пока is_done() false.
| delimiter | - разделитель. |
|
inlineconstexprnoexceptinherited |
Начинается ли строка с заданной подстроки.
| prefix | - подстрока. |
|
inlineconstexprnoexceptinherited |
Начинается ли строка с заданной подстроки без учёта регистра ASCII символов.
| prefix | - подстрока. |
|
inlinenoexceptinherited |
Начинается ли строка с заданной подстроки без учёта регистра Unicode символов первой плоскости (<0xFFFF).
| prefix | - подстрока. |
|
inlineconstexprinherited |
Получить часть строки объектом того же типа, к которому применён метод, аналогично mid.
| from | - количество символов от начала строки. При превышении размера строки вернёт пустую строку. |
| len | - количество символов в получаемом "куске". При выходе за пределы строки вернёт всё до конца строки. |
|
inlineconstexprinherited |
Сравнение с C-строкой посимвольно.
| text | - другая строка. |
|
inlineconstexprinherited |
Получить подстроку. Работает аналогично operator(), только результат выдает того же типа, к которому применён метод.
| from | - количество символов от начала строки. Если меньше нуля, отсчитывается от конца строки в сторону начала. |
| len | - количество символов в получаемом "куске". Если меньше или равно нулю, то отсчитать len символов от конца строки. |
|
inlinenoexceptinherited |
Преобразовать строку в double.
|
inlinenoexceptinherited |
Преобразовать строку в 16ричной записи в double. Пока работает только для char.
|
inlineconstexprnoexceptinherited |
Преобразовать строку в число заданного типа.
| T | - желаемый тип числа. |
| CheckOverflow | - проверять на переполнение. |
| Base | - основание счисления числа, от -1 до 36, кроме 1.
|
| SkipWs | - пропускать пробельные символы в начале строки. Пропускаются все символы с ASCII кодами <= 32. |
| AllowSign | - допустим ли знак '+' перед числом. |
|
inlineconstexprinherited |
Получить simple_str_nt, начиная с заданного символа.
| from | - позиция начального символа, по умолчанию 0. |
|
inlineconstexprnoexceptinherited |
Преобразовать себя в "кусок строки", включающий всю строку.
|
inlineconstexprinherited |
Конвертировать в std::basic_string.
|
inlineconstexprnoexceptinherited |
Конвертировать в std::basic_string_view.
|
inlineinherited |
Удалить пробельные символы в начале и в конце строки.
|
inlineinherited |
Удалить символы, входящие в переданную строку, в начале и в конце строки.
| pattern | - строка, содержащая символы, которые надо удалить. |
|
inlineinherited |
Удалить символы, входящие в строковый литерал, в начале и в конце строки.
| pattern | - строковый литерал, содержащий символы, которые надо удалить. |
|
inlineinherited |
Удалить пробельные символы в начале строки.
|
inlineinherited |
Удалить символы, входящие в переданную строку, в начале строки.
| pattern | - строка, содержащая символы, которые надо удалить. |
|
inlineinherited |
Удалить символы, входящие в строковый литерал, в начале строки.
| pattern | - строковый литерал, содержащий символы, которые надо удалить. |
|
inlineinherited |
Удалить символы, входящие в переданную строку, а также пробельные символы, в начале строки.
| pattern | - строка, содержащая символы, которые надо удалить. |
|
inlineinherited |
Удалить символы, входящие в строковый литерал, а также пробельные символы, в начале строки.
| pattern | - строковый литерал, содержащий символы, которые надо удалить. |
|
inlineinherited |
Удалить пробельные символы в конце строки.
|
inlineinherited |
Удалить символы, входящие в переданную строку, в конце строки.
| pattern | - строка, содержащая символы, которые надо удалить. |
|
inlineinherited |
Удалить символы, входящие в строковый литерал, в конце строки.
| pattern | - строковый литерал, содержащий символы, которые надо удалить. |
|
inlineinherited |
Удалить символы, входящие в переданную строку, а также пробельные символы, в конце строки.
| pattern | - строка, содержащая символы, которые надо удалить. |
|
inlineinherited |
Удалить символы, входящие в строковый литерал, а также пробельные символы, в конце строки.
| pattern | - строковый литерал, содержащий символы, которые надо удалить. |
|
inlineinherited |
Удалить символы, входящие в переданную строку, а также пробельные символы, в начале и в конце строки.
| pattern | - строка, содержащая символы, которые надо удалить. |
|
inlineinherited |
Удалить символы, входящие в строковый литерал, а также пробельные символы, в начале и в конце строки.
| pattern | - строковый литерал, содержащий символы, которые надо удалить. |
|
inlineconstexprinherited |
Получить строку с удалением пробельных символов слева и справа.
| R | - желаемый тип строки, по умолчанию str_src. |
|
inlineinherited |
Получить строку с удалением символов, заданных другой строкой, слева и справа.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строка, задающая символы, которые будут обрезаться. |
|
inlineinherited |
Получить строку с удалением символов, заданных строковым литералом, слева и справа.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строковый литерал, задающий символы, которые будут обрезаться. |
|
inlineinherited |
Получить строку с удалением пробельных символов слева.
| R | - желаемый тип строки, по умолчанию str_src. |
|
inlineinherited |
Получить строку с удалением символов, заданных другой строкой, слева.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строка, задающая символы, которые будут обрезаться. |
|
inlineinherited |
Получить строку с удалением символов, заданных строковым литералом, слева.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строковый литерал, задающий символы, которые будут обрезаться. |
|
inlineinherited |
Получить строку с удалением символов, заданных другой строкой, а также пробельных символов, слева.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строка, задающая символы, которые будут обрезаться. |
|
inlineinherited |
Получить строку с удалением символов, заданных строковым литералом, а также пробельных символов, слева.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строковый литерал, задающий символы, которые будут обрезаться. |
|
inlineinherited |
Получить строку с удалением пробельных символов справа.
| R | - желаемый тип строки, по умолчанию str_src. |
|
inlineinherited |
Получить строку с удалением символов, заданных другой строкой, справа.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строка, задающая символы, которые будут обрезаться. |
|
inlineinherited |
Получить строку с удалением символов, заданных строковым литералом, справа.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строковый литерал, задающий символы, которые будут обрезаться. |
|
inlineinherited |
Получить строку с удалением символов, заданных другой строкой, а также пробельных символов, справа.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строка, задающая символы, которые будут обрезаться. |
|
inlineinherited |
Получить строку с удалением символов, заданных строковым литералом, а также пробельных символов, справа.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строковый литерал, задающий символы, которые будут обрезаться. |
|
inlineinherited |
Получить строку с удалением символов, заданных другой строкой, а также пробельных символов, слева и справа.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строка, задающая символы, которые будут обрезаться. |
|
inlineinherited |
Получить строку с удалением символов, заданных строковым литералом, а также пробельных символов, слева и справа.
| R | - желаемый тип строки, по умолчанию str_src. |
| pattern | - строковый литерал, задающий символы, которые будут обрезаться. |
|
inlineinherited |
Преобразовать в верхний регистр Unicode символы первой плоскости (<0xFFFF).
Регистр меняется упрощенными таблицами, где один code_point всегда меняется в один code_point (но для UTF-8 возможно, что длина в code unit'ах изменится).
|
inlineinherited |
Преобразовать в верхний регистр ASCII символы.
|
inlineinherited |
Получить копию строки в верхнем регистре Unicode символов первой плоскости (<0xFFFF).
| R | - желаемый тип строки, по умолчанию тот же, чей метод вызывался. |
|
inlinestaticinherited |
Создать копию переданной строки в верхнем регистре символов Unicode первой плоскости (<0xFFFF).
| f | - строка источник. |
| ...args | - параметры для инициализации аллокатора. |
Регистр меняется упрощенными таблицами, где один code_point всегда меняется в один code_point (но для UTF-8 возможно, что длина в code unit'ах изменится).
|
inlineinherited |
Получить копию строки в верхнем регистре ASCII символов.
| R | - желаемый тип строки, по умолчанию тот же, чей метод вызывался. |
|
inlinestaticinherited |
Создать строку, копию переданной в верхнем регистре символов ASCII.
| f | - строка источник. |
| ...args | - параметры для инициализации аллокатора. |
|
inlineinherited |
Форматирует строку с помощью std::vformat.
| format | - форматная строка. |
| ...args | - аргументы для std::vformat. |
При необходимости автоматически увеличивает размер буфера строки.
|
inlineinherited |
Добавляет отформатированный с помощью std::vformat вывод, начиная с указанной позиции.
| from | - начальная позиция добавления. |
| max_write | - максимальное количество записываемых символов. |
| format | - форматная строка. |
| ...args | - аргументы для std::vformat. |
При необходимости автоматически увеличивает размер буфера строки.
|
inlineinherited |
Форматирует строку с помощью std::vformat не более указанного размера.
| max_write | - максимальное количество записываемых символов. |
| format | - форматная строка. |
| ...args | - аргументы для std::vformat. |
При необходимости автоматически увеличивает размер буфера строки.
|
inlineinherited |
Вызов функтора со строкой и переданными аргументами.
| fillFunction | - функтор, принимающий первым параметром ссылку на строку. |
| ...args | - аргументы, передаваемые в функтор. |