МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Сила воли ведет к действию, а позитивные действия формируют позитивное отношение


Как определить диапазон голоса - ваш вокал


Игровые автоматы с быстрым выводом


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


Целительная привычка


Как самому избавиться от обидчивости


Противоречивые взгляды на качества, присущие мужчинам


Тренинг уверенности в себе


Вкуснейший "Салат из свеклы с чесноком"


Натюрморт и его изобразительные возможности


Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д.


Как научиться брать на себя ответственность


Зачем нужны границы в отношениях с детьми?


Световозвращающие элементы на детской одежде


Как победить свой возраст? Восемь уникальных способов, которые помогут достичь долголетия


Как слышать голос Бога


Классификация ожирения по ИМТ (ВОЗ)


Глава 3. Завет мужчины с женщиной


Оси и плоскости тела человека


Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) - В простых моделях рынка спрос и предложение обычно полагают зависящими только от текущей цены на товар.

Для работы со строками типа AnsiString





Таблица 3.6. Функции для работы со строками типа AnsiString

Метод Описание
Удаление пробелов
function Trim(const S: string): string;   function TrimLeft(const S: string): string;   function TrimRight(const S: string): string; Удаляет все пробелы и управляющие символы из текстовой строки. Удаляет пробелы в начале строки и все управляющие символы. Удаляет пробелы в конце строки и все управляющие символы.
Сравнение строк
* function CompareText(const S1, S2: string): Integer;   * function CompareStr(const S1, S2: string): Integer;   function AnsiSameText(const S1, S2: string): Boolean; Сравнивает две строки и возвращает 0, если строки идентичны. Функция не учитывает регистр символов. Сравнивает две строки и возвращает 0, если строки идентичны. Функция чувствительна к регистру символов. Сравнивает две строки без учета регистра, но при этом контролируется кодовая страница строки. Если строки идентичны, возвращает true.
Форматирование строк
** function Format(const Format: string; const Args: array of const): string;     ** procedure FmtStr(var StrResult: string; const Format: string; const Args: array of const); * function LowerCase(const S: string): string; * function UpperCase(const S: string): string; function QuotedStr(const S: string): string; Функция возвращает текстовую строку, заполняя ее аргументами из массива Args. Место вставки аргументов и их форматирование определяются в строке Format() (см. табл. 3.7 и 3.8).   Аналогично функции Format(). Результат помещается в строку StrResult.   Возвращает строку в нижнем регистре.   Возвращает строку в верхнем регистре.   Возвращает строку S в одинарных кавычках.
Преобразование других типов данных к string
function IntToStr(Value: Integer): string; functionStrToInt(const S: string): Integer; function StrToIntDef(const S: string; Default: Integer): Integer;   function IntToHex(Value: Integer; Digits: Integer): string;   function FloatToStr(Value: Extended): string; function FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): string;   function FormatFloat(const Format: string; Value: Extended): string;     function FormatMaskText(const EditMask: string; const Value: string): string;   function CurrToStr(Value: Currency): string; function StrToCurr(const S: string): Currency; function CurrToStrF(Value: Currency; Format: TFloatFormat; Digits: Integer): string; function FormatCurr(const Format: string; Value: Currency): string;   function QuotedStr(const S: string): string;   function AnsiQuotedStr(const S: string; Quote: Char): string; Преобразует целое число в строку. Преобразует строку в целое число. Работает как StrToInt(), но при ошибке преобразования возвращает значение Default. Преобразует целое число в строку, соответствующую его шестнадцатеричному представлению. Преобразует число с плавающей точкой в строку. Преобразует значение Value в строку в соответствии с форматом: type TFloatFormat = (ffGeneral, ffExponent, ffFixed, ffNumber, ffCurrency); Точность преобразования определяется в Precision. Для типа данных Single точность обычно равна 7, Double – 15, Extended – 18. Параметр Digits определяет число знаков после запятой. Наиболее совершенная функция преобразования вещественного числа в текстовую строку. Форматирование осуществляется в соответствии со спецификаторами формата в параметре Format (см. табл. 3.9). Возвращает строку Value, отформатированную в соответствии с маской EditMask Преобразует денежный тип в строку. Преобразует строку в денежный тип.   Преобразует денежный тип в строку в соответствии с форматом Format : TFloatFormat. Аналогична функции FormatCurr(). Преобразует денежный тип в строку (см. табл. 3.9). Возвращает значение S внутри одинарных кавычек ('). Возвращает значение S внутри символа, определенного параметром Quote.
Другие функции
procedureDelete(var S: string; Index, Count:Integer);   function Concat(s1[, s2,..., sn]: string): string; function Copy(S; Index, Count: Integer): string;     procedure Insert(Source: string; var S: string; Index: Integer); functionLength(S): Integer; function Pos(Substr: string; S: string): Integer;     function AdjustLineBreaks(const S: string): string;   function AnsiReverseString(const AText: AnsiString): AnsiString; Удаляет из строки S Count символов, начиная с позиции Index. s:='Borland Delphi'; Delete(s,1,7); // Delphi   Возвращает объединение двух и более строк. Возвращает субстроку из Count символов, начиная с позиции Index. s:=Copy('Borland Delphi',9,6);//Delphi   Вставляет в строку S cубстроку Source. Место вставки определяется Index. Возвращает длину строки S. Возвращает индекс первого вхождения символа Substr в строку S. Если такого символа в строке нет, то результат равен нулю. Возвращает строку, заканчивающуюся символами CR/LF (возврат каретки/новая строка). Возвращает реверсивное значение AText

* Для работы со строками с учетом языкового драйвера предусмотрены функции, аналогичные рассмотренным в таблице. Это функции ANSI: AnsiCompareStr() – аналог CompareStr(), AnsiLowerCase() – аналог LowerCase() и т. д.



** Шаблон в строке форматирования имеет следующую форму: "%" [index ":"] ["-"] [width] ["." prec] type

 

Таблица 3.7. Шаблоны форматирования, применяемые в функциях Format()

Спецификатор Описание
%   [index ":"]   ["-"]   [width]   ["." prec]   type Обязательный признак начала спецификатора формата   Индекс аргумента   Выравнивание влево   Ширина   Точность представления вещественного числа   Символ типа преобразования (см. табл. 3.8)

Таблица 3.8. Символы типа преобразования функции Format()

type Описание
d   u   e   f   g   n     m     p     s     x   Десятичный тип. Аргумент должен быть целым числом. s:=Format('Целое число %d',[15]); //Целое число 15 Десятичный тип без знака. Аналогичен типу d, но используется только с неотрицательными числами. Научный тип. Аргумент должен быть числом с плавающей точкой. Аргумент преобразуется в строку вида "-d.ddd...E+ddd" (характеристика и мантисса). Точность (по умолчанию) составляет 15 знаков после запятой. s:=Format('1/3= %e',[1/3]); // 1/3=3,3333333333333333E-01 Можно изменить точность с помощью поля prec: s:=Format('1/3=%1.4e',[1/3]); // 1/3=3,333E-01 Фиксированный тип. Аргумент должен быть числом с плавающей точкой. Значение аргумента преобразуется к виду "-ddd.ddd...". По умолчанию округление производится до второго знака после запятой. s:=Format('1/3=%f',[1/3]); // 1/3=0,33 Основной тип. Аргумент должен быть числом с плавающей точкой. Задача основного типа – преобразовать значение аргумента в самую короткую текстовую строку. Исходя из этого критерия, будет использован фиксированный или научный формат. Числовой тип. Аргумент должен быть числом с плавающей точкой. Значение аргумента преобразуется к виду "-d ddd,ddd ddd...". Между тысячами ставится разделитель. По умолчанию округление производится до второго знака после запятой. s:=Format('1E3*1E3=%n',[1E3*1E3]); //1E3*1E3=1 000 000,00 Денежный тип. Аргумент должен быть числом с плавающей точкой. Значение аргумента преобразуется в текстовую строку в виде денежной суммы. Вид результата определяется значениями глобальных переменных CurrencyString, CurrencyFormat, NegCurrFormat, ThousandSeparator, DecimalSeparator и CurrencyDecimals. По умолчанию округление производится до второго знака после запятой. s:=Format('Сумма = %m',[251.616+345.44]); // Сумма = 597,06р. Указатель. Аргумент должен быть указателем. Значение аргумента конвертируется в 8-ми символьную текстовую строку шестнадцатеричных цифр. Строковый тип. Тип аргумента: string, PChar или Char. Допускается применять совместно с полем prec, определяющим максимальную длину строки. s:=Format('%.5s',['0123456789ABCDE']); // 01234 Шестнадцатеричный тип. Аргумент должен быть целым числом. Значение аргумента преобразуется в строку шестнадцатеричных цифр. s:=Format('24=%x',[26]); // 24=1А

Таблица 3.9. Спецификаторы формата функций FormatFloat() и FormatCurr()

Специ-фикатор Описание
#     .   ,   E+ E- e+ e-   'xx'/"xx"   ; Необязательное цифровое поле. Если преобразуемая величина имеет в этой позиции цифру, то вставится цифра. Иначе поле останется пустым. s:=FormatFloat('0.0#####',9.1989); // 9.1989 Десятичная точка. Разделитель целой и дробной части числа. Символ разделителя определяется в глобальной переменной DecimalSeparator. Разделитель тысяч. Разделяет число влево от десятичной точки на группы по три символа. Символ разделителя определяется в глобальной переменной ThousandSeparator. s:=FormatFloat('#,##0.0',91989.111); // 91 989.1 Научный формат. Число преобразуется в научный формат. Количество нулей после спецификатора определяет ширину мантиссы: s:=FormatFloat('0.0##E+00',91989.111); // 9,199E+04 s:=FormatFloat('0.0##E-00',91989.111); // 9,199E04   Символы пользователя.В кавычки заключаются символы пользователя. s:=FormatFloat('"Число="0.0',9.198); // Число=9.2 Разделитель представления положительных, отрицательных и нулевых чисел. Например: #,##0.00;(#,##0.00).

Процедуры и функции





©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.