
- •Министерство образования и науки российской федерации
- •Программирование в delphi c использованием строкового типа данных
- •305040, Курск, ул. 50 лет Октября, 94 Содержание
- •I-го слова в строке символов.
- •Interface
- •Implementation
- •Процедуры и функции для работы со строками
- •Правила использования параметров функции FloatToStrF
Процедуры и функции для работы со строками
Function AnsiLowerCase (const S: String): String; |
Возвращает исходную строку S, в которой все заглавные буквы заменены на строчные в соответствии с национальной кодировкой Windows (т.е. с учетом кириллицы). |
Function AnsiUpperCase (const S: String): String; |
Возвращает исходную строку S, в которой все строчные буквы заменены на заглавные в соответствии с национальной кодировкой Windows. |
Function ConCat (S1 [, S2, …,Sn]: String): String; |
Возвращает строку, представляющую собой сцепление строк параметров S1, S2 … Sn. |
Function Copy (St: String; Index, Count: Integer); |
Копирует из строки St Count символов начиная с символа с номером Index. |
Procedure Delete (St: String; Index, Count: Integer); |
Удаляет Count символов из строки St начиная с символа с номера Index. |
Procedure Insert (SubSt: String; St, Index: Integer); |
Вставляет подстроку SubSt в строку St начиная с символа с номером Index. |
Function Length (St: String): Integer; |
Возвращает текущую длину строки St. |
Function LowerCase (const S: String): String; |
Возвращает исходную строку S, в которой все латинские заглавные буквы заменены на строчные. |
Procedure OleStrToStrVar (Source: PwideChar; var Dest: String); |
Копирует «широкую» (двухбайтную строку в обычную строку Object Pascal. |
Function Pos (SubSt, St: String): Integer; |
Отыскивает в строке St первое вхождение подстроки SubSt и возвращает номер позиции, с которой она начинается. Если подстрока не найдена, возвращается ноль. |
Procedure SetLenght (St: String; NewLenght: Integer); |
Устанавливает новую (меньшую) длину NewLenght строки St. Если NewLenght больше текущей длины строки, обращение к SetLenght игнорируется. |
Function StringOfChar (Ch: Char; Count: Integer): String; |
Создает строку, состоящую из Count раз повторенного символа Ch. |
Function StringToOleStr (const Source: String): PWideChar; |
Копирует обычную строку в двухбайтную. |
Function StringToWideChar (const Source: String; Dest: PWideChar; DestSize: Integer): PWideChar; |
Преобразует обычную строку в строку с символами UNICODE. |
Function UpperCase (const S: String): String; |
Возвращает исходную строку S, в которой все строчные латинские буквы заменены на заглавные. |
Подпрограммы преобразования строк в другие типы | |
Function StrToCurr (St: String): Currency; |
Преобразует символы строки в целое число типа Currency. Строка не должна содержать ведущих или ведомых пробелов. |
Function StrToDate (St: String): TDateTime; |
Преобразует символы строки St в дату. Строка должна содержать два или три числа, разделенными правильными для Windows разделителями даты (в русифицированной версии таким разделителем является «.»). Первое число – правильный день, второе – правильный месяц. Если указано третье число, оно должно задавать год в формате XX или XXXX. Если символы года отсутствуют, дата дополняется текущим годом. Например: DateToStr(StrToDate (28.06)) даст строку 28.06.99 |
Function StrToDateTime (St: String): TDateTime; |
Преобразует символы строки St в дату и время. Строка должна содержать правильную дату (см. StrToDate) и правильное время (см. StrToTime) разделенные пробелом, например: StrToDateTime (28.06 18:23) |
Function StrToFloat (St: String): Extended; |
Преобразует символы строки St в вещественное число. Строка не должна содержать ведущих или ведомых пробелов. |
Function StrToInt (St: String): Integer; |
Преобразует символы строки St в целое число. Строка не должна содержать ведущих или ведомых пробелов. |
Function StrToIntDef (St: String; Default: Integer): Integer; |
Преобразует символы строки St в целое число. Если строка не содержит правильного представления целого числа, возвращает значение Default. |
Function StrToIntRange (St: String; Min, Max: LongInt): LongInt; |
Преобразует символы строки St в целое число и возбуждает исключение ErangeError, если число выходит из заданного диапазона Min…Max. |
Function StrToTime (St: String): TDateTime; |
Преобразует символы строки St во время. Строка должна содержать два или три числа, разделенных правильным для Windows разделителем времени (для русифицированной версии таким разделителем является «:»). Числа задают часы, минуты и, возможно секунды. За последним числом через пробел могут следовать символы «am» или «pm», указывающие на 12-часовой формат времени. |
Procedure Val (St: String; var X: Code: Integer); |
Преобразует строку символов St во внутреннее представление целой или вещественной X, которое определяется типом этой переменной. Параметр Code содержит ноль, если преобразование прошло успешно, и тогда в X помещается результат преобразования, в противном случае он содержит номер позиции в строке St, где обнаружен ошибочный символ, и в этом случае содержимое X не меняется. В строке St могут быть ведущие и/или ведомые пробелы. |
Подпрограммы обратного преобразования | |
Function DateTimeToStr (Value: TDateTime): String; |
Преобразует дату и время из параметра Value в строку символов. |
Procedure DateTimeToString (var St: String; Format: String; Value: TDateTime); |
Преобразует дату и время из параметра Value в строку St в соответствии со спецификатором Format. |
Function DateToStr (Value: TDateTime): String; |
Преобразует дату из параметра Value в строку символов. |
Function FloatToStr (Value: Extended): String; |
Преобразует вещественное значение Value в строку символов. |
Function FloatToStrF (Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): String; |
Преобразует вещественное значение Value в строку символов с учетом формата Format и параметров Precision и Digits. |
Function FormatDateTime (Format: String; Value: TDateTime): String; |
Преобразует дату и время из параметра Value в строку символов в соответствии со спецификаторами параметра Format. |
Function FormatFloat (Format: String; Value: Extended): String; |
Преобразует вещественное значение Value в строку символов с учетом спецификаторов формата Format. |
Function IntToHex (Value: Integer; Digits: Integer): String; |
Преобразует целое число Value в строку символьного представления шестнадцатеричного формата: Digits – минимальное количество символов в строке. |
Function IntToStr (Value: Integer): String; |
Преобразует целое значение Value в строку символов. |
Procedure Str (X [:Width [:Decimals]]; var St: String; |
Преобразует число X любого вещественного или целого типов в строку символов St; параметры Width и Decimals. Если они присутствуют, задают формат преобразования:Width определяет общую ширину поля, выделенного под соответствующее символьное представление вещественного числа X, а Decimals – количество символов в дробной части (этот параметр имеет смысл только в том случае, когда X – вещественное число). |
Function TimeToStr (Value: TDateTime): String; |
Преобразует время из параметра Value в строку символов.
|
Подпрограммы для работы с нуль-терминальными строками | |
Function CharToOem (Str, OemStr: Pchar): boolean; |
Преобразует символы строки Str из кодировки ANSI в кодировку MS DOS и перемещает результат в OemStr. Всегда возвращает True. |
Function CharToOemBuff (Str, OemStr: Pchar; MaxLen: LongInt): boolean; |
Преобразует не более MaxLen символов строки Str из кодировки ANSI в кодировку MS DOS и помещает результат в OemStr. Всегда возвращает True. |
Function OemToChar (OEMStr, Str: Char): boolean; |
Преобразует символы из кодировки MS DOS в кодировку ANSI и возвращает True. |
Function OemToCharBuff (OEMStr, Str: PChar; MaxLen: Longint): Bool; |
Преобразует не более MaxLen символов строки OemStr из кодировки MS DOS в кодировку ANSI и помещает результат в Str. Всегда возвращает True. |
Function StrCat(Dest, Source: PChar): PChar; |
Копирует строку Source в конец строки Dest и возвращает указатель на строку Dest. |
Function StrComp (Strl, Str2: PChar): Integer; |
Побайтно сравнивает строку Strl со строкой Str2 и возвращает следующий результат: = 0 для Strl = Str2; >0 для Str1>Str2; < 0 для Strl<Str2. |
Function StrCopy (Dest, Source: PChar): PChar; |
Копирует строку Source в строку Dest и возвращает указатель на Dest. StrCopy не проверяет реальный размер памяти, связанный с Dest (он должен быть не меньше StrLen(Source)+1). |
Procedure StrDispose (Str:PChar); |
Удаляет строку Str из памяти. Строка должна быть предварительно помещена в память функцией StrNew. Если Str = NIL, процедура ничего не делает. |
Function StrECopy (Dest,Source: PChar): PChar; |
Объединяет строки. Эта функция работает в точности как StrCat, но возвращает указатель на конец сцепленных строк, т.е. на терминальный ноль. |
Function StrEnd (Str:PChar): PChar; |
Функция возвращает указатель на терминальный ноль строки Str. |
Function StrIComp (Strl, Str2: PChar): PChar; |
Функция сравнивает строки, игнорируя возможную разницу в высоте букв. Возвращает такой же результат, как и StrComp. Замечу, что функция правильно работает лишь с латиницей. Для кириллицы ее нужно модифицировать. |
Function StrLCat (Dest, Source: PChar; MaxLen: Word): PChar; |
Копирует символы строки Source в конец строки Dest до тех пор, пока не будут скопированы все символы или пока длина сцепленной строки Dest не достигнет MaxLen. Возвращает указатель на сцепленную строку. В отличие от StrCopy эта функция блокирует возможное переполнение области памяти, связанной с Dest. Обычно в качестве MaxLen используется выражение SizeOf (Dest) -1. |
Function StrLComp (Dest, Source: PChar; MaxLen: Word): PChar; |
В отличие от StrComp сравнивает не более MaxLen символов строк. Возвращаемый результат такой же, как и у StrComp. |
Function StrLCopy (Dest, Source: PChar; MaxLen: Word): PChar; |
Копирует символы из строки Source в строку Dest до тех пор, пока не будет скопирована вся строка или пока не будет скопировано MaxLen символов. В отличие от StrCopy блокирует возможное переполнение области памяти, связанной с Dest. В качестве MaxLen обычно используется выражение SizeOf (Dest) -1. |
Function StrLen (Str:PChar): Cardinal; |
Возвращает длину строки. |
Function StrLIComp (Strl, Str2: PChar; MaxLen: Word): PChar; |
Сравнивает не более MaxLen символов строк, проверяя точное соответствие высоты букв. Возвращаемый результат см. StrComp. Функция правильно работает только с латиницей. |
Function StrLower (Str:PChar): PChar; |
Преобразует заглавные буквы строки Str к строчным и возвращает указатель на результат. Функция правильно работает только с латиницей. |
Function StrMove (Dest, Source: PChar; Count: Word): PChar; |
Копирует точно Count символов строки Source в строку Dest и возвращает указатель на результат. Функция игнорирует действительные размеры строк и может выйти за их пределы. |
Function StrNew (Str: PChar) Pchar; |
Помещает строку в память. |
Function StrPas (Str: PChar) : String; |
Преобразует нуль-терминальную строку в строку String. |
Function StrPCopy (Str: PChar; S: String): PChar; |
Преобразует строку String в нуль-терминальную строку. Возвращает указатель на Str. |
Function StrPos (Strl, Str2: PChar): PChar; |
Ищет подстроку Str2 в строке Strl и возвращает указатель на первое вхождение Str2 или NIL, если подстрока не найдена. |
Function StrScan (Str: PChar; Ch: Char): Pchar; |
Ищет символ Ch в строке Str и возвращает указатель на последний обнаруженный символ Ch или NIL, если символ не найден. |
Function StrScan(Str; PChar; Ch: Char): PChar; |
Ищет символ Ch в строке Str и возвращает указатель на первый обнаруженный символ Ch или NIL, если символ не найден. |
Function StrUpper (Str: Pchar): Pchar; |
Преобразует строчные буквы строки Str к заглавным и возвращает указатель на результат. Функция правильно работает только с латиницей. |