[Заказ рекламы]

Вернуться   Форум ICQMAG.Ru > Компьютеры/Интернет > Программирование

Важная информация

Программирование C++ / C# / Delphi / PHP / Perl / MySQL

Ответ
 
Опции темы Опции просмотра
Старый 29.05.2009, 19:24   #1
Пользователь
 
Аватар для XirurG
 
Регистрация: 04.05.2009
Сообщений: 148
Репутация: 96

ICQ: 36555558
По умолчанию Работа со строками

Символы

Chr(x : byte) : Char - Возвращает символ ASCII кода х
Ord(c : Char) : Byte - Возвращает ASCII-код символа c
UpCase(c : Char) : Char - Переводит символы 'a'..'z' в верхний регистр
Pred(c : Char) : Char - Выдает предшествующий c символ
Succ(c : Char) : Char - Выдает последующий за c символ

Строки

Length(s : String) : Byte - Возвращает длину строки s
ConCat(s1, s2, s3 ... sn : String) : String - Возвращает конкатинацию (слияние) строк s1...sn
Copy(s : String; start, len : Integer) : String - Возвращает подстроку длиной len, начинающуюуся с позиции start строки s
Delete(VAR s : String; start, len : Integer) - Удалает подстроку длиной len начиная с позиции start строки s
Insert(VAR s : String; SubS : String; start : Integer ) - Вставляет в s подстроку SubS, начиная с позиции start
Pos(SubS, s : string) : byte - Ищет вхождение подстроки SubS в s и возвращает номер первого символа SubS в s, или 0, если s не соержит SubS

Процедуры преобразования

Str(X :F :n; s : string) - Преобразует числовое значение X в строковое s, возможно создание формата для х
Val(S : String; var X; errCode : integer) - Преобразует строку цифр S в числовое значение X, при неудачном преобразовании errCode содержит номер позиции символа в строке, который не удалось преобразовать (то есть он не является цифрои или десятичной точкой)

Модуль для работы со строками

Содержит ряд функций для работы со строковыми переменными. Функции разбиты на насколько групп:

Функции проверки:
Функции, начинающиеся с Is... предназначены для проверки принадлежности символов строки к определенным группам. Все они возвращают логическое значение (True/False). Функция Is... проверяет, "является ли символ Ch..."

Function IsAlpha(Ch: Char): Boolean;
... алфавитным (прописная или строчная буква)
Function IsDigit(Ch: Char): Boolean;
... цифрой от '0' до '9'
Function IsAlnum(Ch: Char): Boolean;
... алфавитно-цифровым (цифра или прописная/строчная буква)
Function IsAscii(Ch: Char): Boolean;
... символом Ascii ($00 .. $7E)
Function IsLower(Ch: Char): Boolean;
... строчной буквой (русского или латинского алфавита)
Function IsUpper(Ch: Char): Boolean;
... прописной буквой (русского или латинского алфавита)
Function IsXDigit(Ch: Char): Boolean;
... шестнадцатеричной цифрой ('0' .. '9' и прописная/строчная 'a' .. 'f')
Функции преобразования:
Function StrLower(s: String): String;
Преобразует в строке S все прописные буквы в строчные (корректно работает с символами кириллицы)
Function StrUpper(s: String): String;
Преобразует в строке S все строчные буквы в прописные (корректно работает с символами кириллицы)
Функции сравнения строк:
Все эти функции возвращают результат типа strResult:
CODE
Type
strResult = (strLess, strEqual, strMore);


При сравнении строк s1 и s2 результат будет таким:
QUOTE
s1 = s2 : вернется strEqual
s1 < s2 : вернется strLess
s1 > s2 : вернется strMore
Function StrCompare(s1, s2: String): strResult;
Посимвольное сравнение двух строк
Function StrPartCompare(s1, s2: String; n: Byte): strResult;
Функция аналогична StrCompare, но сравнивает только максимум N символов двух строк
Function StrIgnoreCompare(s1, s2: String): strResult;
Функция аналогична StrCompare, но при сравнении строк игнорирует различие между строчными и прописными буквами
Function StrIgnorePartCompare(s1, s2: String; n: Byte): strResult;
Функция аналогична StrPartCompare, но при сравнении строк игнорирует различие между строчными и прописными буквами
Функции поиска:
Function StrPos(s, subs: String; Var Ch: Char): Byte;
Функция ищет в строке S первое вхождение любого символа, присутствующего в строке Subs. В случае успеха (хотя бы один символ из Subs присутствует в S), функция вернет позицию в строке S, в которой встретился символ, который вернулся в Ch. В случае, если ни один символ из Subs в строке S не встречается, функция возвращает 0 и Ch = #0.
Function RevPos(subs, s: String): Byte;
Функция производит поиск последнего вхождения подстроки Subs в строку S. Если Subs не содержится в S, функция вернет 0.
Function bmSearch(start: Integer; Const s, p: String): Integer;
Функция поиска подстроки P в строке S по алгоритму Бойера-Мура (поиск будет осуществляться начиная с позиции start строки S)
Описание простого варианта алгоритма Бойера-Мура
Дополнительные функции:
Function StrRevert(s: String): String;
Функция "переворачивает" строку S (изменяет порядок символов в строке на обратный)
Function StrDelLeadSpace(s: String): String;
Function StrDelEndSpace(s: String): String;
Эти функции удаляют из строки все начальные (StrDelLeadSpace) и конечные (StrDelEndSpace) пробелы.
Function StrOneSpace(s: String): String;
Функция удаляет из строки все лишние пробелы таким образом, что между остальными символами всегда остается только один пробел.
Function GetWords(s: String; Var mas: TWords): Byte;
Функция разбивающая строку S на массив слов Mas и возвращающая количество найденых слов. Реализация функции - см. выше...
Function isPalindrom(Const s: String): Boolean;
Функция проверяет, является ли переданная ей в качестве параметра строка "палиндромом" (т.е. строкой, читающейся одинаково и слева направо и справа налево). Реализация функции:
__________________

Помог?Жми спасибо!:good:
Offline   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с потоками в Delphi [Alien] Программирование 0 08.04.2010 09:54


Текущее время: 16:18. Часовой пояс GMT +3.
 



|