Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Справочник по KOL - Работа со строками

Ведущий раздела KOL и MCK: Анатолий aka XVeL
Автор: Борис Моренко
WEB-сайт: http://kol.mastak.ru

Полную версию библиотеки KOL и MCK можно скачать здесь.

function AnsiEq( const S1, S2: String ): Boolean;
Возвращает true, если AnsiLowerCase(S1) = AnsiLowerCase(S2) т.е сравнивает 2 строки без учета регистра. Данная функция подойдет только для русских символов. function DelimiterLast( const Str, Delimiters: String ): Integer;
Функция ищет в строке Str последнее вхождение строки Delimiters и возвращает номер символа с которого он идет. Если Delimiters не найден возвращается длина Str.

function AnsiUpperCase( const S: string ): string;
Преобразует символы в строке S к верхнему регистру.

function AnsiLowerCase( const S: string ): string;
Преобразует символы в строке S к нижнему регистру.

function AnsiCompareStr( const S1, S2: string ): Integer;
Сравнивает две строки ANSI S1 и S2 без учета регистра. Возвращает значение < 0, если S1 < S2, 0, если S1 = S2, и > 0, если S1 > S2.

function _AnsiCompareStr( S1, S2: PChar ): Integer;
Аналог AnsiCompareStr только для PChar.

function CopyEnd( const S: String; Idx: Integer ): String;
Копирует строку из строки S с Idx символа до последнего

function CopyTail( const S: String; Len: Integer ): String;
Возвращает последние Len символа из строки S. Если Len > Length( S ), возвращается вся строка S.

procedure DeleteTail( var S: String; Len: Integer );
Удаляет последние Len символа из строки.

function LowerCase( const S: string ): string;
Преобразует символы в строке S к нижнему регистру. Только для латинских символов.

procedure NormalizeUnixText( var S: String );
В строке S происходит замена всех символов #10 на символ #13

function IndexOfChar( const S: String; Chr: Char ): Integer;
Возвращает положение символа Chr в строке S. Возвращаемое значение может быть то 1 до Length(S), если возвращается -1 то символ не найден.

function IndexOfCharsMin( const S, Chars: String ): Integer;
Возвращает положение ближайшего от начала(строки) символа Chr в строке S. Если возвращается -1 то символ не найден.

function IndexOfStr( const S, Sub: String ): Integer;
Возвращает положение строки Sub в строке S. Возвращаемое значение может быть то 1 до Length(S)-Length(Sub), если возвращается -1 то строка не найдена.

function Parse( var S: String; const Separators: String ): String;
Функция ищет в строке S строку Separators и возвращает все что шло до этого разделителя (т.е. до Separators). В строке S удаляется возвращаемая часть и найденный Separators.
Т.е. если S= '1-2-3',а Separators= '-' то при первом вызове на выходе '1' , а S='2-3'
Если в S нет Separators то возвращаемое значение рано S, а сама S становится пуcтой.

function StrEq( const S1, S2: String ): Boolean;
Возвращает true, если LowerCase(S1) = LowerCase(S2) т.е сравнивает 2 строки без учета регистра. Данная функция подойдет только для латинских символов.

function StrIn( const S: String; A: array of String ): Boolean;
Функция возвращает True если в одна из строк массива А равна строке S. Спавнение идет с помощью функции StrEq поэтому оно не чуствительно к регистру букв.

function StrSatisfy( const S, Mask: String ): Boolean;
Возвращает True если строка S соответствует маске Mask. Строка Mask может содержать символ '*' (любое количество любых символов) и '?' (один любой символ). Например чтобы проверить содержит ли S адрес почты надо :
StrSatisfy(S,'*@*.*');

function StrReplace( var S: String; const From, ReplTo: String ): Boolean;
Производит замену в строке S первой встреченной строки From на строку ReplTo. Если замена произошла успешно возвращает True.

function StrPCopy( Dest: PChar; const Source: string ): PChar;
Копирует паскалевскую строку в строку типа PChar

function StrLCopy( Dest: PChar; const Source: PChar; MaxLen: Cardinal ): PChar;
Копирует первые MaxLen символов из паскалевсокой строки в строку типа PChar.

function StrComp( const Str1, Str2: PChar ): Integer;
Быстрое сравнение 2-х строк. На выходе -1: Str1<Str2; 0: Str1=Str2; +1: Str1>Str2

function StrLComp( const Str1, Str2: PChar; MaxLen: Cardinal ): Integer;
Сравнивает до MaxLen символов двух строк Str1 и Str2 с учетом регистра. Возвращает значение < 0, если Str1 < Str2, 0, если Str1 = Str2, и > 0, если Str1 > Str2.

function StrCopy( Dest, Source: PChar ): PChar;
Функция производит быстрое копирование строки Source в Dest и возвращает Dest.

function StrLen( const Str: PChar ): Cardinal;
Функция возвращает число символов в строке Str, не учитывая конечного нулевого символа.

function StrScanLen( Str: PChar; Chr: Char; Len: Integer ): PChar;
Быстрое сканирование строки Str длиной Len на нахождение в нем первого символа Chr . Если Chr не входит в Str, возвращается nil.

function StrScan( Str: PChar; Chr: Char ): PChar;
Полный аналог предыдущей функции только сканирование происходит всей строки Str до последнего символа.

function StrRScan( const Str: PChar; Chr: Char ): PChar;
Возвращает указатель на последнее вхождение символа Chr в строку Str. Если Chr не входит в Str, возвращается nil.

function StrIsStartingFrom( Str, Pattern: PChar ): Boolean;
Возвращает True если строка Str начинается со строки Pattern, то есть если Copy( Str, 1, StrLen( Pattern ) ) = Pattern

procedure Str2LowerCase( S: PChar );
Переводит символы в нуль-терминальной строке в верхней регистр.

function TrimLeft( const S: string ): string;
Удаляет из начала строки S пробелы и управляющие символы

function TrimRight( const S: string ): string;
Удаляет в конца строки S пробелы и управляющие символы.

function Trim( const S: string ): string;
Удаляет в конца и в начале строки S пробелы и управляющие символы.

function UpperCase( const S: string ): string;
Преобразует символы в строке S к верхнему регистру. Только для латинских символов.

function WStrReplace( var S: WideString; const From, ReplTo: WideString ): Boolean;
Производит замену в строке S первой встреченной строки From на строку ReplTo. Если замена произошла успешно возвращает True. Анналог функции StrReplace только для WideString (поэтому в Delphi 2 не будет)

function WStrLen( W: PWideChar ): Integer;
Возвращает длину строки типа PWideChar.

procedure WStrCopy( Dest, Src: PWideChar );
Копирует строку Dest тип PWideChar в Src

function WStrCmp( W1, W2: PWideChar ): Integer;
Сравнивает 2-е строки тип PWideChar. На выходе тоже что и у StrComp

function Clipboard2Text: String;
Возвращает из буфера обмена текст.

function Text2Clipboard( const S: String ): Boolean;
Помещает в буфер обмена текст

Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay