Работа со строками
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;
Помещает в буфер обмена текст