Функции, работающие со строками — КиберПедия 

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

Функции, работающие со строками

2021-06-30 37
Функции, работающие со строками 0.00 из 5.00 0 оценок
Заказать работу

К функциям, работающим со строками, относятся следующие:

· (chr <целое>) - получает буквенно-цифровой символ (строку из одного буквенно-цифрового символа) по коду действующей таблицы символов;

· (ascii <строка>) - получает код первого символа строки текста по действующей таблице символов;

· (read <строка>) - читает строку-аргумент до первого пробела (или до конца, если пробелов нет) и возвращает прочитанное значение как символ AutoLISP (т. е. имя функции или переменной);

· (strcase <строка> [<признак>]) - преобразует строку в верхний или нижний регистр (если аргумент <признак> опущен или равен nil, то функция strcase выполняет преобразование всех буквенно-цифровых символов строки в верхний регистр; если аргумент <признак> задан, и его значение отлично от nil, то выполняется преобразование строки в нижний регистр);

· (strcat [<строка1> [<строка2>... [<строкаN>]... ]]) - конкатенация (сцепление)строк;

· (strlen [<строка1> [<строка2>... [<строкаN>]... ]]) - вычисляет суммарную длину всех строк-аргументов (длина строки - это количество буквенно-цифровых знаков в строке);

· (substr <строка><начало> [<количество>]) - выделяет подстроку, начиная с заданной позиции; если количество аргументом <количество> не задано или задано больше, чем осталось в строке, определяемой аргументом <строка>, начиная с позиции, определяемой аргументом <начало>, то возвращается полный остаток строки от заданного места.

Примеры:

(chr 192) - возвращает "А" (русская буква); (chr 48) - возвращает "0"; (ascii "A") - возвращает 192 (русская буква); (ascii "A") - возвращает 65 (латинская буква); (ascii "ABCDEFGH") - возвращает 65 (все буквенно-цифровые знаки, кроме первого, игнорируются); (read "B C D E F") - возвращает B; (read "23.55") - возвращает 23.55; (read "10 масса") - возвращает 10; (strcase "AbcdE FGh-38") - возвращает "ABCDE FGH-38"; (strcase "AbcdE FGh-38" Т) - возвращает "abcde fgh-38"; (strcat "Happy N" "ew " "Year") - возвращает "Happy New Year"; (strcat (itoa 12) "-я линия") - возвращает "12-я линия"; (strlen "Happy N" "ew " "Year") - возвращает 14; (strlen "Петербург") - возвращает 9; (substr "Happy New Year" 7 3) - возвращает "New"; (substr "Happy New Year" 7) - возвращает "New Year".

Функция wcmatch проверяет строку на соответствие образцу (шаблону):

(wcmatch <строка><образец>)

Аргументы: <строка> - строка, структуру которой нужно проверить; <образец> - особая строка, определяющая требования к проверяемой структуре. Аргумент <образец> может содержать как обычные алфавитно-цифровые знаки, так и специальные групповые знаки (wild-card-characters), рассматриваемые в табл. 3.2.. Можно в строке, определенной аргументом <образец>, задать сразу несколько шаблонов, на соответствие каждому из которых аргумент <строка> будет проверен; шаблоны должны разделяться с помощью запятой.

Таблица 3.2. Специальные знаки, которые можно использовать в образце

Знак Назначение
# Заменяет одну любую цифру
@ Заменяет одну букву
. (точка) Заменяет любой символ, не являющийся ни буквой, ни цифрой
* Заменяет любую последовательность любых символов, даже пустую; может использоваться в любом месте аргумента <образец>
? Заменяет ровно один любой символ
Если стоит в начале образца, заданного аргументом <образец>, то означает "все, кроме определенного аргументом <образец>"
[...] Заменяет любой из символов, перечисленных в скобках
[∼...] Заменяет любой символ, кроме перечисленных в скобках
- Между двумя однотипными знаками указывает на диапазон
, (запятая) Разделяет два шаблона
' (обратный апостроф) Превращает специальный знак в обычный

В квадратных скобках любой знак рассматривается не как специальный, поэтому его не надо предварять обратным апострофом. Символ "\" является служебным, поэтому его использование отвечает изложенным выше правилам.

Возвращаемое значение: т - если аргумент <строка> соответствует аргументу <образец>, nil - если не соответствует.

Примеры:

(wcmatch "Happy New Year" "H*") - возвращает T, т. к. проверяемая строка начинается с буквы "Н"; (wcmatch "Happy New Year" "h*") - возвращает nil (при проверке внутри строк символы "Н" и "h" считаются разными); (wcmatch "Happy New Year" "??ppy*, *New*, * * *") - возвращает Т, т. к. все три шаблона соблюдены; (wcmatch "Happy New Year" "*#*") - возвращает nil, т. к. нет ни одной цифры; (wcmatch "Happy New Year" "H[adgt]*") - возвращаетТ; (wcmatch "Happy***day" "Happy'*'*'**") - возвращаетТ; (wcmatch "Year 2000" "@ea@ [1-6]000") - возвращает Т.

Поделиться с друзьями:

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.009 с.