×
Traktatov.net » Описание языка PascalABC.NET » Читать онлайн
Страница 19 из 252 Настройки

Однако, строке можно присвоить nil, что необходимо для работы с NET-кодом.

Кроме того, в PascalABC.NET реализованы размерные строки. Для их описания используется тип string[n], где n - константа целого типа, указывающая длину строки. Размерные строки, в отличие от обычных, можно использовать как компоненты типизированных файлов. Для совместимости с Delphi Object Pascal в стандартном модуле описан тип shortstring=string[255].

Стандартные подпрограммы работы со строками.

Члены класса string.

Методы типа string

Тип string в PascalABC.NET является классом и содержит ряд свойств, статических и экземплярных методов, а также методов расширения.

В методах класса string считается, что строки индексируются с нуля. Кроме того, ни один метод не меняет строку, т.к. строки в .NET являются неизменяемыми.

Свойства класса String

Свойство

Описание

s[i]

Индексное свойство. Возвращает или позволяет изменить i-тый символ строки s. Строки в PascalABC.NET индексируются от 1.

Length: integer

Возвращает длину строки

Статические методы класса String

Метод

Описание

String.Compare(s1,s2: string): integer

Сравнивает строки s1 и s2. Возвращает число <0 если s10 если s1>s2

String.Compare(s1,s2: string; ignorecase: boolean): integer

То же. Если ignorecase=True, то строки сравниваются без учета регистра букв

String.Format(fmtstr: string, params arr: array of object): string;

Форматирует параметры arr согласно форматной строке fmtstr

String.Join(ss: array of string; delim: string): string

Возвращает строку, полученную слиянием строк ss с использованием delim в качестве разделителя

Экземплярные методы класса String


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

Метод

Описание

Contains(s: string): boolean

Возвращает True, если текущая строка содержит s, и False в противном случае

EndsWith(s: string): boolean

Возвращает True, если текущая строка заканчивается на s, и False в противном случае

IndexOf(s: string): integer

Возвращает индекс первого вхождения подстроки s в текущую строку или -1 если подстрока не найдена

IndexOf(s: string; start,count: integer): integer

Возвращает индекс первого вхождения подстроки s в текущую строку или -1 если подстрока не найдена. Поиск начинается с символа с номером start и распространяется на следующие count символов

IndexOfAny(cc: array of char): integer

Возвращает индекс первого вхождения любого символа из массива сс

Insert(from: integer; s: string): string

Возвращает строку, полученную из исходной строки вставкой подстроки s в позицию from

LastIndexOf(s: string): integer

Возвращает индекс последнего вхождения подстроки s в текущую строку

LastIndexOf(s: string; start,count: integer): integer

Возвращает индекс последнего вхождения подстроки s в текущую строку или -1 если подстрока не найдена. Поиск начинается с символа с номером start и распространяется на следующие count символов

LastIndexOfAny(a: array of char): integer