Функции строк
В данной статье при описании функций приняты следующие обозначения:
|
Функции поиска и сопоставления
contains
Определяет, содержит ли строка value
указанную подстроку substring
.
Чтобы проверить наличие нескольких подстрок, используйте функцию rv_contains_any . Функция вернет true , если хотя бы одна из переданных подстрок присутствует в строке.
|
Спецификация функции
contains(value: <строка>, substring: <строка>, [case_sensitive: <логическое значение>]) :: <логическое значение>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Текст для поиска. |
да |
|
|
строка |
Подстрока, которую нужно найти в |
да |
|
|
логическое значение |
Должен ли поиск учитывать регистр символов. |
|
нет |
Примеры
Проверка наличия подстроки в строке (с учетом регистра)
contains("The Needle In The Haystack", "Needle")
true
Проверка наличия подстроки в строке (без учета регистра)
contains("The Needle In The Haystack", "needle", case_sensitive: false)
true
contains_all
Определяет, содержит ли строка value
все указанные подстроки (substrings
).
Чтобы проверить наличие в строке хотя бы одной из подстрок, используйте функцию rv_contains_any . Функция вернет true , если одна из переданных подстрок присутствует в строке.
|
Спецификация функции
contains_all(value: <строка>, substrings: <массив>, [case_sensitive: <логическое значение>]) :: <логическое значение>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Текст для поиска. |
да |
|
|
массив |
Массив подстрок, которые нужно найти в |
да |
|
|
логическое значение |
Должен ли поиск учитывать регистр символов. |
|
нет |
Примеры
Проверка наличия подстрок в строке (с учетом регистра)
contains_all("The Needle In The Haystack", ["Needle", "Haystack"])
true
Проверка наличия подстроки в строке (без учета регистра)
contains_all("the NEEDLE in the haystack", ["needle", "haystack"], case_sensitive: false)
true
rv_contains_any
Определяет, содержится ли в строке value
хотя бы одна подстрока из массива substrings
.
Массив строк должен быть представлен литералом, без использования переменных. Это позволяет оптимизировать выполнение, заранее построив структуру для поиска конкретных подстрок. |
Спецификация функции
rv_contains_any(value: <строка>, substrings: <массив>, [case_sensitive: <логическое значение>]) :: <логическое значение>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка, в которой производится поиск подстрок. |
да |
|
|
массив |
Литерал массива строк, которые ищутся в |
да |
|
|
логическое значение |
Определяет, учитывается ли регистр символов при поиске. |
|
нет |
Ошибки
Функция rv_contains_any
может возвращать ошибки, для которых требуется обработка:
-
Подстроки содержат недопустимые данные.
Примеры
Одна из подстрок содержится в значении
rv_contains_any("eqwas_)xz!123", ["asd", "xz"])
true
Одна из подстрок содержится в значении без учета регистра
rv_contains_any("eqwas_)xZ!123", ["asd", "Xz"], case_sensitive: false)
true
Ни одна подстрока не содержится в значении
rv_contains_any("eqwas_)xz!123", ["asd", "xz1"])
false
starts_with
Определяет, начинается ли value
с подстроки substring
.
Чтобы проверить несколько подстрок, используйте функцию rv_starts_with_any . Функция вернет true , если строка начинается хотя бы с одной из переданных подстрок.
|
Спецификация функции
starts_with(value: <строка>, substring: <строка>, [case_sensitive: <логическое значение>]) :: <логическое значение>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка для поиска. |
да |
|
|
строка |
Подстрока, с которой |
да |
|
|
логическое значение |
Определяет, должен ли поиск быть чувствительным к регистру. |
|
нет |
Примеры
Строка начинается с подстроки (с учетом регистра)
starts_with("The Needle In The Haystack", "The Needle")
true
Строка начинается с подстроки (без учета регистра)
starts_with("The Needle In The Haystack", "the needle", case_sensitive: false)
true
rv_starts_with_any
Определяет, начинается ли строка value
хотя бы с одной подстроки из массива substrings
.
Массив строк должен быть представлен литералом, без использования переменных. Это позволяет оптимизировать выполнение, заранее построив структуру для поиска конкретных подстрок. |
Спецификация функции
rv_starts_with_any(value: <строка>, substrings: <массив>, [case_sensitive: <логическое значение>]) :: <логическое значение>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка, в которой производится поиск подстрок. |
да |
|
|
массив |
Литерал массива строк, которые ищутся в |
да |
|
|
логическое значение |
Определяет, учитывается ли регистр символов при поиске. |
|
нет |
Ошибки
Функция rv_contains_any
может возвращать ошибки, для которых требуется обработка:
-
Подстроки содержат недопустимые данные.
Примеры
Значение начинается с одной из подстрок
rv_starts_with_any("xzeqwas_)xz!123", ["asd", "xz"])
true
Значение начинается с одной из подстрок без учета регистра
rv_starts_with_any("xZeqwas_)xz!123", ["asd", "Xz"], case_sensitive: false)
true
Значение не начинается ни с одной из подстрок
rv_starts_with_any("xzeqwas_)xz1!123", ["asd", "xz1"])
false
ends_with
Определяет, заканчивается ли строка value
указанной подстрокой substring
.
Чтобы проверить несколько подстрок, используйте функцию rv_ends_with_any . Функция вернет true , если строка заканчивается хотя бы одной из переданных подстрок.
|
Спецификация функции
ends_with(value: <строка>, substring: <строка>, [case_sensitive: <логическое значение>]) :: <логическое значение>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка для поиска. |
да |
|
|
строка |
Подстрока, которой должно заканчиваться |
да |
|
|
логическое значение |
Определяет, должен ли поиск быть чувствительным к регистру. |
|
нет |
Примеры
Строка заканчивается (с учетом регистра)
ends_with("The Needle In The Haystack", "The Haystack")
true
Строка заканчивается (без учета регистра)
ends_with("The Needle In The Haystack", "the haystack", case_sensitive: false)
true
rv_ends_with_any
Определяет, заканчивается ли строка value
хотя бы одной подстрокой из массива substrings
.
Массив строк должен быть представлен литералом, без использования переменных. Это позволяет оптимизировать выполнение, заранее построив структуру для поиска конкретных подстрок. |
Спецификация функции
rv_ends_with_any(value: <строка>, substrings: <массив>, [case_sensitive: <логическое значение>]) :: <логическое значение>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка, в которой производится поиск подстрок. |
да |
|
|
массив |
Литерал массива строк, которые ищутся в |
да |
|
|
логическое значение |
Определяет, учитывается ли регистр символов при поиске. |
|
нет |
Ошибки
Функция rv_contains_any
может возвращать ошибки, для которых требуется обработка:
-
Подстроки содержат недопустимые данные.
Примеры
Значение заканчивается одной из подстрок
rv_ends_with_any("eqwas_)xz!123xz", ["asd", "xz"])
true
Значение заканчивается одной из подстрок без учета регистра
rv_ends_with_any("eqwas_)xz!123xZ", ["asd", "Xz"], case_sensitive: false)
true
Значение не заканчивается ни одной из подстрок
rv_ends_with_any("eqwas_)xz!123xz", ["asd", "xz1"])
false
find
Определяет позицию начала первого найденного элемента в строке value
, слева направо, который соответствует шаблону pattern
, или возвращает -1, если элемент не найден.
Спецификация функции
find(value: <строка>, pattern: <регулярное выражение | строка>, [from: <целое число>]) :: <целое число>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка для поиска паттерна. |
да |
|
|
регулярное выражение строка |
Регулярное выражение или строка для сравнения. |
да |
|
|
целое число |
Смещение, с которого начинается поиск. |
|
нет |
Примеры
Поиск текста
find("foobar", "foo")
0
Поиск по регулярному выражению
find("foobar", r'b.r')
3
Нет совпадений
find("foobar", "baz")
-1
С учетом смещения
find("foobarfoobarfoo", "bar", 4)
9
match
Определяет, соответствует ли value
указанному шаблону pattern
.
Спецификация функции
match(value: <строка>, pattern: <регулярное выражение>) :: <логическое значение>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Значение для проверки на соответствие. |
да |
|
|
регулярное выражение |
Регулярное выражение для проверки соответствия. |
да |
Примеры
Проверка на соответствие регулярному выражению
match("I'm a little teapot", r'teapot')
true
match_any
Определяет, соответствует ли value
хотя бы одному из указанных шаблонов patterns
. Все шаблоны проверяются за один проход по целевой строке, что дает этой функции преимущество в производительности перед многократным вызовом функции match
.
Спецификация функции
match_any(value: <строка>, patterns: <массив>) :: <логическое значение>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Значение для проверки на соответствие. |
да |
|
|
массив |
Массив регулярных выражений для проверки соответствия. |
да |
Примеры
Проверка на соответствие хотя бы одному регулярному выражению
match_any("I'm a little teapot", [r'frying pan', r'teapot'])
true
strlen
Возвращает количество символов UTF-8 в строке value
. Это отличается от length
, который бы подсчитал количество байтов в строке.
Обратите внимание, что это подсчет значений Unicode, который иногда может отличаться от кодовых точек Unicode.
Спецификация функции
strlen(value: <строка>) :: <целое число>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка |
да |
Примеры
strlen
strlen("ñandú")
5
Функции разбиения и слияния массивов и строк
join
Объединяет каждую строку в массиве value
в одну строку с возможным разделителем separator
.
Спецификация функции
join(value: <массив>, [separator: <строка>]) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
массив |
Массив строк, которые нужно объединить. |
да |
|
|
строка |
Строка, разделяющая каждый элемент при объединении. |
нет |
Примеры
Объединение массива (без разделителя)
join!(["bring", "us", "together"])
bringustogether
Объединение массива (разделитель — запятая)
join!(["sources", "transforms", "sinks"], separator: ", ")
sources, transforms, sinks
slice
Возвращает срез массива или строки value
между позициями start
и end
.
Если параметры start
и end
отрицательные, они отсчитываются справа от строки или массива. Если end
указывает на позицию, которая больше длины строки или массива, возвращается срез до конца строки или массива.
Спецификация функции
slice(value: <массив | строка>, start: <целое число>, [end: <целое число>]) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
массив строка |
Строка или массив для среза. |
да |
|
|
целое число |
Включительная начальная позиция. Индекс с нуля, который может быть отрицательным. |
да |
|
|
целое число |
Исключительная конечная позиция. Индекс с нуля, который может быть отрицательным. |
|
нет |
Примеры
Срез строки (положительный индекс)
slice!("Supercalifragilisticexpialidocious", start: 5, end: 13)
califrag
Срез строки (отрицательный индекс)
slice!("Supercalifragilisticexpialidocious", start: 5, end: -14)
califragilistic
split
Разделяет строку value
с использованием шаблона pattern
.
Спецификация функции
split(value: <строка>, pattern: <строка | регулярное выражение>, [limit: <целое число>]) :: <массив>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка для разделения. |
да |
|
|
строка регулярное выражение |
Строка разделяется каждый раз, когда совпадает с этим шаблоном. Может быть строкой или регулярным выражением. |
да |
|
|
целое число |
Максимальное количество подстрок для возврата. |
нет |
Примеры
Разделение строки (без ограничения)
split("apples and pears and bananas", " and ")
[ "apples", "pears", "bananas"]
Разделение строки (с ограничением)
split("apples and pears and bananas", " and ", limit: 2)
[ "apples", "pears and bananas" ]
Чтобы разбить строку на части заданной длины в байтах, используйте функцию chunks .
|
Функции редактирования строк
redact
Скрывает конфиденциальные данные, такие как номера социального страхования США (SSN) и другие виды личной информации, с помощью пользовательских шаблонов. Это помогает соблюдать правила и гарантировать, что конфиденциальные данные не покидают вашу сеть.
Поведение функции зависит от типа значения value
:
-
Для строк — скрывает конфиденциальные данные и возвращает новую строку.
-
Для массивов — скрывает конфиденциальные данные в каждом элементе строки.
-
Для объектов — маскирует конфиденциальные данные в каждом значении строки, но не в ключах.
В массивах и объектах функция рекурсивно применяет эти операции ко всем вложенным массивам и объектам. Любые нестроковые элементы будут пропущены.
Любой скрытый текст будет заменен на [REDACTED]
.
Спецификация функции
redact(value: <строка | объект | массив>, filters: <массив>, [redactor: <строка | объект> ])) :: <строка | объект | массив>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка объект массив |
Значение, в котором требуется скрыть конфиденциальные данные. |
да |
|
|
массив |
Список фильтров, которые будут применены к Каждый фильтр может быть указан одним из следующих способов: - В виде регулярного выражения, которое будет использовано для скрытия соответствующего ему текста.
- В виде объекта Именованный фильтр - в виде объекта NOTE: Данный параметр должен быть представлен литералом, без использования переменных или других динамических выражений. Это позволяет выполнить проверку аргумента на этапе компиляции и исключить ошибки во время выполнения. |
да |
|
|
строка объект |
Указывает, на что заменить совпадения с фильтрами. Аргумент задается как объект вида
Этот параметр должен быть представлен статическим выражением. Нельзя использовать переменные или другие динамические выражения. Это позволяет выполнить проверку аргумента на этапе компиляции и исключить ошибки во время выполнения. |
|
нет |
Для часто используемых шаблонов замены можно использовать сокращения в виде строк:
|
Примеры
Замена текста с помощью регулярного выражения
redact("my id is 123456", filters: [r'\d+'])
my id is [REDACTED]
Замена номеров социального страхования США в любом поле
redact({ "name": "John Doe", "ssn": "123-12-1234"}, filters: ["us_social_security_number"])
{ "name": "John Doe", "ssn": "[REDACTED]" }
Замена произвольным текстом
redact("my id is 123456", filters: [r'\d+'], redactor: {"type": "text", "replacement": "***"})
my id is ***
Замена хешем SHA-3
redact("my id is 123456", filters: [r'\d+'], redactor: "sha3")
my id is ZNCdmTDI7PeeUTFnpYjLdUObdizo+bIupZdl8yqnTKGdLx6X3JIqPUlUWUoFBikX+yTR+OcvLtAqWO11NPlNJw==
Замена хешем SHA-256 в шестнадцатеричной кодировке
redact("my id is 123456", filters: [r'\d+'], redactor: {"type": "sha2", "variant": "SHA-256", "encoding": "base16"})
my id is 8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92
replace
Заменяет все совпадения с шаблоном pattern
из значения value
на строку with
.
В аргументе with
могут использоваться именованные группы.
Спецификация функции
replace(value: <строка>, pattern: <регулярное выражение | строка>, with: <строка>, [count: <целое число>]) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Исходная строка. |
да |
|
|
регулярное выражение строка |
Заменяет все совпадения с этим шаблоном. Может быть статической строкой или регулярным выражением. |
да |
|
|
строка |
Строка, которой заменяются совпадения. |
да |
|
|
целое число |
Максимальное количество замен. |
|
нет |
Примеры
Замена текста
replace("Apples and Bananas", "and", "not")
Apples not Bananas
Замена с помощью регулярного выражения
replace("Apples and Bananas", r'(?i)bananas', "Pineapples")
Apples and Pineapples
Замена только первого совпадения
replace("Bananas and Bananas", "Bananas", "Pineapples", count: 1)
Pineapples and Bananas
Замена с захватом групп
replace("foo123bar", r'foo(?P<num>\d+)bar', "$num")
"123"
replace_with
Заменяет все совпадения с шаблоном pattern
из строки value
с помощью замыкания.
Аргумент pattern
принимает регулярное выражение, которое может использовать захват групп.
Синтаксис замыкания используется, чтобы вычислить строку, на которую заменяются совпадения. Замыкание принимает единственный аргумент, представляющий собой объект со следующими полями:
-
captures
— массив, элементами которого являются захваченные группы.Если группа является незахватывающей (то есть обозначена
?:
) то значение соответствующего элемента равноnull
. -
string
— строка, включающая полное совпадение. -
поля, соответствующие именованным группам.
В результате функции возвращается новая строка с заменой совпадений, исходная строка не изменяется.
Спецификация функции
replace_with(value: <строка>, pattern: <регулярное выражение>, [count: <целое число> ]) -> |<переменная>| { <блок> } :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Исходная строка. |
да |
|
|
регулярное выражение |
Шаблон для поиска совпадений. Может содержать захват групп. Нельзя использовать имена групп |
да |
|
|
целое число |
Максимальное количество замен. |
|
нет |
Примеры
Сделать первые буквы слов прописными
replace_with("no server available", r'\b(\w)(\w*)') -> |match| { upcase!(match.captures[0]) + string!(match.captures[1]) }
No Server Available
Замена на хэш
replace_with("email from test@example.com", r'\w+@example.com') -> |match| { sha2(match.string, variant: "SHA-512/224") }
email from adf6e1bc4415d24912bd93072ad34ef825a7b6eb3bf53f68def1fc17
Замена на хэш
replace_with("email from test@example.com", r'\w+@example.com') -> |match| { sha2(match.string, variant: "SHA-512/224") }
email from adf6e1bc4415d24912bd93072ad34ef825a7b6eb3bf53f68def1fc17
Замена первого вхождения
replace_with("The file was not found, check the file name.", r'(?i)file', count: 1) -> |match| { "object" }
The object was not found, check the file name.
Именованная группа
replace_with("level=error A message", r'level=(?P<level>\w+)') -> |match| { lvl = upcase!(match.level) "[{{lvl}}]" }
[ERROR] A message
sieve
Сохраняет в value
только совпадения с шаблоном pattern
.
Функцию можно использовать для определения символов, которые разрешены в строке, и удаления всего остального.
Спецификация функции
sieve(value: <строка>, pattern: <регулярное выражение>, [replace_single: <строка> , replace_repeated: <строка> ]) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Исходная строка. |
да |
|
|
регулярное выражение |
Шаблон, совпадения с которым должны остаться в строке. |
да |
|
|
строка |
Строка, на которую будут заменены отдельные символы, не совпадающие с шаблоном. |
нет |
|
|
строка |
Строка, на которую будут заменены последовательности нескольких символов, не совпадающих с шаблоном. |
нет |
Примеры
Очистка строки с помощью регулярного выражения
sieve("test123%456.فوائد.net.", r'[a-z0-9.]')
test123456..net.
Очистка с указанием заменяющих строк
sieve("test123%456.فوائد.net.", r'[a-z.0-9]', replace_single: "X", replace_repeated: "<REMOVED>")
test123X456.<REMOVED>.net.
truncate
Обрезает строку value
до количества символов limit
.
Спецификация функции
truncate(value: <строка>, limit: <целое число | число с плавающей точкой>, ellipsis: <логическое значение>) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка для обрезания. |
да |
|
|
целое число число с плавающей точкой |
Количество символов, после которых будет обрезана строка. |
да |
|
|
логическое значение |
Добавлять ли многоточие при обрезании строки. Если параметр равен |
|
нет |
|
строка |
Суффикс, который добавляется к обрезанным строкам. Если |
нет |
Примеры
Обрезка с многоточием
truncate("A rather long sentence.", limit: 11, ellipsis: true)
A rather lo...
Обрезка с произвольным суффиксом
truncate("A rather long sentence.", limit: 11, suffix: "[TRUNCATED]")
A rather lo[TRUNCATED]
Функции изменения регистра
downcase
Преобразует строку value
в нижний регистр, где "нижний регистр" определяется по свойству Unicode Lowercase
.
Спецификация функции
downcase(value: <строка>) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка, которую необходимо преобразовать к нижнему регистру. |
да |
Примеры
Приведение строки к нижнему регистру
downcase("Hello, World!")
hello, world!
upcase
Приводит value
к верхнему регистру, который определяется согласно свойству Unicode Uppercase
.
Спецификация функции
upcase(value: <строка>) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка, которую нужно привести к верхнему регистру |
да |
Примеры
Приведение строки к верхнему регистру
upcase("Hello, World!")
HELLO, WORLD!
camelcase
Приводит строку value
к camelCase ("верблюжьему" регистру). Опционально можно указать исходный регистр, иначе будет произведена попытка определить регистр автоматически.
Спецификация функции
camelcase(value: <строка>, [original_case: <строка> ]) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка, которую нужно привести к camelCase. |
да |
|
|
строка |
Опциональная подсказка об исходном типе регистра. Допустимые значения:
|
нет |
Примеры
Приведение строки к camelCase
camelcase("input-string")
inputString
Приведение строки к camelCase с заданным исходным регистром
camelcase("input-string", "kebab-case")
inputString
kebabcase
Приводит строку value
к kebab-case (регистру "шашлыка"). Опционально можно указать исходный регистр, иначе будет произведена попытка определить регистр автоматически.
Спецификация функции
kebabcase(value: <строка>, [original_case: <строка> ]) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка, которую нужно привести к kebab-case. |
да |
|
|
строка |
Опциональная подсказка об исходном типе регистра. Допустимые значения:
|
нет |
Примеры
Приведение строки к kebab-case
kebabcase("InputString")
input-string
Приведение строки к kebab-case с заданным исходным регистром
kebabcase("InputString", "PascalCase")
input-string
screamingsnakecase
Приводит строку value
к SCREAMING_SNAKE case (регистру "кричащей змеи"). Опционально можно указать исходный регистр, иначе будет произведена попытка определить регистр автоматически.
Спецификация функции
screamingsnakecase(value: <строка>, [original_case: <строка> ]) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка, которую нужно привести к SCREAMING_SNAKE case. |
да |
|
|
строка |
Опциональная подсказка об исходном типе регистра. Допустимые значения:
|
нет |
Примеры
Приведение строки к SCREAMING_SNAKE case
screamingsnakecase("input-string")
INPUT_STRING
Приведение строки к SCREAMING_SNAKE case с заданным исходным регистром
screamingsnakecase("input-string", "kebab-case")
INPUT_STRING
snakecase
Приводит строку value
к snake_case ("змеиному" регистру). Опционально можно указать исходный регистр, иначе будет произведена попытка определить регистр автоматически.
Спецификация функции
snakecase(value: <строка>, [original_case: <строка> ]) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка, которую нужно привести к snake_case. |
да |
|
|
строка |
Опциональная подсказка об исходном типе регистра. Допустимые значения:
|
нет |
Примеры
Приведение строки к snake_case
snakecase("input-string")
input_string
Приведение строки к snake_case с заданным исходным регистром
snakecase("input-string", "kebab-case")
input_string
pascalcase
Приводит строку value
к PascalCase (регистру Pascal). Опционально можно указать исходный регистр, иначе будет произведена попытка определить регистр автоматически.
Спецификация функции
pascalcase(value: <строка>, [original_case: <строка> ]) :: <строка>
Аргумент | Тип | Описание | По умолчанию | Обязателен |
---|---|---|---|---|
|
строка |
Строка, которую нужно привести к PascalCase. |
да |
|
|
строка |
Опциональная подсказка об исходном типе регистра. Допустимые значения:
|
нет |
Примеры
Приведение строки к PascalCase
pascalcase("input-string")
InputString
Приведение строки к PascalCase с заданным исходным регистром
pascalcase("input-string", "kebab-case")
InputString