.. currentmodule:: TatInternalObject Строки ---------------------------------------------------------------------- .. pas:function:: Copy(S: string; Index: Integer; Count: Integer): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:function:: CompareText(Text1, Text2: String): Integer Функция сравнивает строку *Text1* и *Text2*. Функция возвращает значение: **меньше нуля** если ``Text1 < Text2`` **ноль** если ``Text1 = Text2`` **больше нуля** если ``Text1 > Text2`` Функция чувствительна к регистру набора символов входных параметров. :param String Text1: Строка для сравнения :param String Text2: Строка для сравнения :rtype: Integer .. pas:function:: AnsiCompareText(Text1, Text2: String): Integer Сравнивает строки Text1 и S2 c чувствительностью к регистру. Возвращает следующие значения: **меньше нуля** если ``Text1 < Text2`` **ноль** если ``Text1 = Text2`` **больше нуля** если ``Text1 > Text2`` :param String Text1: Строка для сравнения :param String Text2: Строка для сравнения :rtype: Integer .. pas:function:: CompareStr(Str1, Str2: Variant): Integer Функция сравнивает строку *Str1* и *Str2*. Функция возвращает значения: **меньше нуля** если ``S1 < S2`` **ноль** если ``S1 = S2`` **больше нуля** если ``S1 > S2`` Функция чувствительна к регистру набора символов входных параметров. :param Variant Str1: Строка для сравнения :param Variant Str2: Строка для сравнения :rtype: Integer .. pas:function:: AnsiCompareStr(S1, S2: String): Integer Сравнивает строки *S1* и *S2* c чувствительностью к регистру. Возвращает следующие значения: **меньше нуля** если ``S1 < S2`` **ноль** если ``S1 = S2`` **больше нуля** если ``S1 > S2`` :param String S1: Строка для сравнения :param String S2: Строка для сравнения :rtype: Integer .. pas:function:: AnsiEndsText(SubStr, Str: String): Boolean Метод проверяет, является ли одна строка окончанием другой (метод регистронезависимый) :param String SubStr: подстрока :param String Str: строка :rtype: Boolean .. pas:function:: AnsiEndsStr(SubStr, Str: String): Boolean Метод проверяет, является ли одна строка окончанием другой (метод регистрозависимый) :param String SubStr: подстрока :param String Str: строка :rtype: Boolean .. pas:function:: AnsiStartsText(SubStr, Str: String): Boolean Метод проверяет, является ли одна строка началом другой (метод регистронезависимый) :param String SubStr: подстрока :param String Str: строка :rtype: Boolean .. pas:function:: AnsiStartsStr(SubStr, Str: String): Boolean Метод проверяет, является ли одна строка началом другой (метод регистрозависимый) :param String SubStr: подстрока :param String Str: строка :rtype: Boolean .. pas:function:: ContainsText(Text, SubText: String): Boolean Функция возвращет **True**, если *SubText* является подстрокой строки *Text*. Функция является нечувствительной к регистру символов. :param String Text: Строка в которой ищется подстрока. :param String SubText: Подстрока. :rtype: Boolean .. pas:function:: ContainsStr(Text, SubText: String): Boolean Функция возвращет **True**, если *SubText* является подстрокой строки *Text*. Функция является чувствительной к регистру. :param String Text: Строка в которой ищется подстрока. :param String SubText: Подстрока. :rtype: Boolean .. pas:function:: MidStr(Text: String; Start, Count: Integer): String Возвращает подстроку содержащюю *Count* символов из *Text* начиная c *Start*. :param String Text: Исходная строка :param Integer Start: Индекс начала подстроки :param Integer Count: Длина подстроки :rtype: String .. pas:function:: ReplaceText(Text, FromText, ToText: String): String Заменяет все вхождения *FromText* в строке *Text* строкой *ToText*. Функция нечувствительна к регистру набора символов. :param String Text: Исходная строка. :param String FromText: Подстрока. :param String ToText: Новая подстрока. :rtype: String .. pas:function:: ReplaceStr(Text, FromText, ToText: String): String Заменяет все вхождения *FromText* в строке *Text* строкой *ToText*. Функция чувствительна к регистру набора символов. :param String Text: Исходная строка. :param String FromText: Подстрока. :param String ToText: Новая подстрока. :rtype: String .. pas:function:: Delete(Str, Index, Count: Variant): String Метод удаляет подстроку из строки *Str* с символа по номеру *Index*, *Count* символов. :param Variant Str: Строка из которой будет удаляться *Count* символов с символа *Index*. :param Variant Index: Начало подстроки которую следует удалить. :param Variant Count: Количество символов подстроки. :rtype: String .. warning:: В :term:`Application Server` функция называется ``deletesubstr`` .. pas:function:: Chr(X: Integer): Char Функция возвращает ASCII символ по значению *X*. :param Integer X: Номер символа в ASCII :rtype: Char .. pas:function:: Fmt(FormatStr: String; Params: Array): String Форматирует строку, заменяя подстроки {n} на соответствующие параметры. :param String FormatStr: Cтрока формата, для подстановки параметров используется '{n}', где n-номер параметра (нумерация с нуля). :param Array Params: Массив параметров, которые будут подставлены в строку формата. :rtype: String .. pas:function:: Format(Format: String; Args: Array): String Функция выполняет форматирование строки *Format* с использованием массива аргументов *Args*. :param String Format: Строка форматирования. Содержит буквенные символы и спецификаторы формата. Буквенные символы переносятся в результирующую строку. Спецификаторы формата разбирают аргументы из списка и применяют к ним форматирование. Спецификаторы формата имеют следующий вид: ``"%" [index ":"] ["-"] [width] ["." prec] type`` Спецификаторы формата начинаются с символа **%**. После него идут, по порядку: - Необязательный параметр - индекс аргумента в списке аргументов (индекс первого элемента - **0**), ``[index ":"]`` - Необязательный параметр - выравнивание по левому краю, ``["-"]`` - Необязательный параметр - ширина поля, ``[width]`` - Необязательный параметр - точность отображения чисел, ``["." prec]`` - Тип аргумента из списка, который будет вставлен в строку вместо спецификатора, ``type`` Возможные типы спецификаторов для вставки в строку d Decimal. Десятичное целое число. Значение преобразуется в строку десятичных цифр. Если спецификатор формата содержит поле точности, то результирующая строка должна содержать количество цифр, но не менее указанного значения. Если форматируемое значение содержит меньше цифр, оно дополняется слева нулями. u Unsigned decimal. Аналогично 'd', но не выводится знак числа. e Scientific. Число с плавающей точкой. Значение конвертируется в строку формата ``"-d.ddd...E+ddd"``. Отрицательные числа начинаются со знака "-". Перед десятичной точкой всегда присутствует одна цифра. По умолчанию точность равна 15, если не задан спецификатор точности. После символа экспоненты "Е" всегда стоит знак "+" или "-" и минимум три цифры. f Fixed. Число с плавающей точкой. Значение конвертируется в строку формата ``"-ddd.ddd..."``. Отрицательные числа начинаются со знака "-". По умолчанию точность равна 2, если не задан спецификатор точности. g General. Число с плавающей точкой. Значение конвертируется в кратчайшую строку десятичных символов используя формат "Fixed" или "Scientific". По умолчанию точность равна 15, если не задан спецификатор точности. Конечные нули обрезаются, десятичная точка выводится только в случае необходимости. Если количество цифр слева от десятичной точки меньше или равно точности, либо значеине больше либо равно 0.00001, то при конвертации используется формат "Fixed". В противном случае используется формат "Scientific". n Number. Число с плавающей точкой. Значение конвертируется в строку формата ``"-d,ddd,ddd.ddd..."``. Данный формат повторяет формат "Fixed" за исключением того, что результат содержит знаки, отделяющие тысячи m Money. Число с плавающей точкой. Значение конвертируется в строку, представляющую валюту - добавляется разделитель тысяч и символ валюты после значения. p Pointer. Указатель. Значение конвертируется в строку из восьми символов, которая отображает значение указателя в шестнадцатеричном виде s String. Символ (буква), строка. x Hex. Число в шестнадцатеричном представлении. :param Array Args: Массив аргументов. :rtype: String .. note:: Символы разделителей рвзрядов и дробной части берутся из локали пользователя. .. warning:: Для денежного формата всегда используется символ рубля. Если есть необходимость использовать другой денежный символ - используйте формат `Number` и укажите символ литералом. .. pas:function:: GetFmtCaption(Name: String; Params: Array): String Выражение ``GetFmtCaption(Name,Params)`` равно выражению ``Fmt(GetCaption(Name),Params).`` :param String Name: Системное имя представления понятия :param Array Params: Массив параметров, подставляемых в текст представления понятия. :rtype: String .. pas:function:: Trim(S: String): String Функция удаляет пробелы в начале и конце строки. :param String S: Строка, которую необходимо обрезать. :rtype: String .. pas:function:: TrimLeft(Str: String): String Функция удаляет пробелы сначала строки :param String Str: Строка, которую необходимо обрезать. :rtype: String .. pas:function:: TrimRight(Str: String): String Функция удаляет пробелы в конце строки :param String Str: Строка, которую необходимо обрезать. :rtype: String .. pas:function:: LowerCase(Str: String): String Функция приводит все символы строки к нижнему регистру. :param String Str: Исходная строка :rtype: String .. pas:function:: UpperCase(Str: String): String Функция приводит все символы строки к верхнему регистру. :param String Str: Исходная строка :rtype: String .. pas:function:: AnsiLowerCase(Str: String): String Функция возвращает копию строки *Str*, преобразованную к нижнему регистру набора символов. :param String Str: Исходная строка :rtype: String .. pas:function:: AnsiUpperCase(Str: String): String Функция возвращает копию строки *Str* преобразованную к верхнему регистру набора символов. :param String Str: Исходная строка :rtype: String .. pas:function:: StrToTime(Str: String): TDateTime Функция возвращает время, преобразуя строку *Str* к типу **TTime**. :param String Str: Время в строковом значение. :rtype: TDateTime .. pas:function:: StrToDate(Str: String): TDateTime Функция преобразует строку *Str* к типу **TDate**. :param String Str: Значение даты в строковом представлении. :rtype: TDateTime .. pas:function:: StrToDateTime(Value: String): TDateTime Преобразует строку *Value* в значение типа дата-время, согласно строке форматирования установленной в настройках ОС :param String Value: Строковое значение даты-времени :rtype: TDateTime .. pas:function:: StrToIntDef(Str: String; Default: Integer): Integer Функция возвращает целочисленное значение строки *Str*, выполняя приведение типа. Если функция не может выполнить приведение типа, то возвращает значение параметра *Default*. :param String Str: Строка. :param Integer Default: Значение по умолчанию. :rtype: Integer .. pas:function:: StrToInt(Str: String): Integer Функция возвращает число, выполняя приведение типов от строки *Str* к целочисленному значению. :param String Str: Входная строка. :rtype: Integer .. pas:function:: StrToFloat(Str: Variant): Float Функция преобразует строку *Str* в число с плавающей запятой. :param Variant Str: Входная строка. :rtype: Float .. pas:function:: StrToDouble(Str: String): Double Функция преобразует строку *Str* в число с плавающей запятой. :param String Str: Входная строка. :rtype: Double .. pas:function:: StrToDateFmt(Value, FmtString: String): Variant Преобразует строку *Value* в значение типа дата, согласно строке форматирования *FmtString*. :param String Value: Входная строка. :param String FmtString: Строка форматирования. :rtype: Variant .. pas:function:: StrToDateTimeFmt(Value, FmtString: String): TDateTime Преобразует строку *Value* в значение типа дата-время, согласно строке форматирования *FmtString*. :param String Value: Входная строка. :param String FmtString: Строка форматирования. .. note:: Особенности строки форматирования для метода ``StrToDateTimeFmt``: Строка должна содержать как строку формата даты так и формата времени, разделённых пробелом. То, что до пробела будет считаться форматом даты, после пробела форматом времени Разделитель даты (времени) может быть произвольным ( . , : ; / -). Разделителем считается первый символ в строке формата не являющийся числом или буквой. Пример: ``'YYYY/MM/DD h-mm-ss'`` в данном случае разделителем даты будет "/", а разделителем времени "-". :rtype: TDateTime .. code-block:: delphi :caption: Пример использования ShowMessage(StrToDateFmt('2005-12-10', 'YYYY-MM-DD')); ShowMessage(StrToDateTimeFmt('2005/12/10 10-15-26', 'YYYY/MM/DD h-mm-ss')); ShowMessage(StrToTimeFmt('10.15.26', 'h.mm.ss')); .. pas:function:: StrToTimeFmt(Value, FmtString: String): TDateTime Преобразует строку *Value* в значение типа время, согласно строке форматирования *FmtString*. :param String Value: Входная строка. :param String FmtString: Строка форматирования. :rtype: TDateTime .. pas:function:: StringToArray(Text: Variant; Delimiter: Char): Array Функция преобразует строку *Text* в одномерный массив :param Variant Text: Исходная строка. :param Char Delimiter: Cимвол-разделитель. :rtype: Array .. pas:function:: ArrayToString(Array: Array; Delimiter: String): String Функция преобразует одномерный массив *Array* в строку с разделителем *Delimiter*. :param Array Array: Исходный массив. Если в качестве параметра *Array* был передан не массив, то функция вернёт строковое представление переменной :param String Delimiter: Символ-разделитель :rtype: String .. pas:function:: IntToStr(Value: Integer): String Функция возвращает строку, выполняя приведение значения *Value* целочисленного типа к строке. :param Integer Value: Число. :rtype: String .. pas:function:: IntToHex(Digits, Value: Integer): String Функция возвращает шестнадцатиричное представление в строку целочисленного числа *Value*. :param Integer Digits: Минимальное количество символов в шестнадцатиричном представлении. :param Integer Value: Значение которое необходимо представить в шестнадцатиричном представлении. :rtype: String .. pas:function:: FloatToStr(Value: Float): String Функция возвращает строку, выполняя приведение типа числа *Value* к строке. :param Float Value: Вещественное число. :rtype: String .. pas:function:: FormatFloat(const Format: string; Value: Extended): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:function:: TimeToStr(Time: TDateTime): String Функция преобразует время *Time* в строку и возвращает строковое значение. :param TDateTime Time: Значение времени. :rtype: String .. pas:function:: DateTimeToStr(DateTime: TDateTime): String Функция преобразует значение даты-времени *Time* в строку и возвращает строковое значение. :param TDateTime DateTime: Значение даты-времени. :rtype: String .. pas:function:: DateToStr(Date: TDateTime): String Функция возвращает строку, выполняя приведение типа даты *Date* к строке. :param TDateTime Date: Значение даты. :rtype: String .. pas:function:: VarToStr(Variant: Variant): String Функция конвертирует значение Variant переменной в строку. :param Variant Variant: Переменная, значение которой должно быть преобразовано в строку :rtype: String .. pas:function:: ConvertOemToAnsi(Text: String): String Преобразовывает текст в Oem кодировке в кодировку Ansi. :param String Text: Исходная строка. :rtype: String .. warning:: Не реализовано .. pas:function:: ConvertAnsiToOem(Text: String): String Преобразовывает текст в Ansi кодировке в кодировку Oem. :param String Text: Исходная строка. :rtype: String .. warning:: Не реализовано .. pas:function:: Length(Str: String): Integer Возвращает длину строки *Str*. :param String Str: Строка. :rtype: Integer .. pas:function:: Pos(Substr, Str: String): Integer Функция возвращает индекс символа начала первого вхождения подстроки *SubStr* в строку *Str*. В случае если подстрока не найдена, функция возвращает **0**. :param String Substr: Подстрока. :param String Str: Строка. :rtype: Integer .. pas:function:: Ord(S: Char): Integer Функция возвращает byte код ASCII символа *S*. :param Char S: ASCII символ. :rtype: Integer TatStrUtilsLibrary `````````````````` .. warning:: Не поддерживается в :term:`Application Server` .. pas:class:: TatStrUtilsLibrary Строковые функции .. pas:method:: DecodeSoundexWord(AValue: Word): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. warning:: Не поддерживается в :term:`Application Server` .. pas:method:: PosEx(const SubStr, S: string; Offset: Integer): Integer; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiLeftStr(const Text: string; const Count: Integer): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiReverseString(const Text: string): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiStartsStr(const SubText, Text: string): Boolean; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiContainsText(const Text, SubText: string): Boolean; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiContainsStr(const Text, SubText: string): Boolean; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: SoundexProc(const Text, Other: string): Boolean; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: SoundexCompare(const Text, Other: string; Length: TSoundexLength): Integer; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: SoundexSimilar(const Text, Other: string; Length: TSoundexLength): Boolean; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: SoundexWord(const Text: string): Word; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: DecodeSoundexInt(Value: Integer): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: SoundexInt(const Text: string; Length: TSoundexIntLength): Integer; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: Soundex(const Text: string; Length: TSoundexLength): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: SearchBuf(Buf: PAnsiChar; BufLen: Integer; SelStart, SelLength: Integer; SearchString: AnsiString; Options: TStringSearchOptions): PAnsiChar; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiMidStr(const Text: string; const Start, Count: Integer): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiRightStr(const Text: string; const Count: Integer): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: MidBStr(const Text: AnsiString; const ByteStart, ByteCount: Integer): AnsiString; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: RightBStr(const Text: AnsiString; const ByteCount: Integer): AnsiString; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: LeftBStr(const Text: AnsiString; const ByteCount: Integer): AnsiString; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: StuffString(const Text: string; Start, Length: Cardinal; const AubText: string): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: ReverseString(const Text: string): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: DupeString(const Text: string; Count: Integer): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiReplaceStr(const Text, FromText, ToText: string): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiEndsStr(const SubText, Text: string): Boolean; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiReplaceText(const Text, FromText, ToText: string): string; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiEndsText(const SubText, Text: string): Boolean; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiStartsText(const SubText, Text: string): Boolean; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:method:: AnsiResemblesText(const Text, Other: string): Boolean; Метод из стандартной библиотеки Pascal. Описание на `Embarcadero docwiki `__ .. pas:class:: TSoundexLength Встроенный тип. Описание на `Embarcadero docwiki `__ TStringList `````````````````````````````````````````````````````````````````````` .. pas:class:: TStringList Объект для работы со строками. Для его использования необходимо подключить (с помощью директивы "uses") модуль **Classes** Встроенный тип. Описание на `Embarcadero docwiki `__