Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Б) Действия над типом String



Основными операциями с типом String являются:

Присваивание: S1=S2;

Сравнение: S1==S2, S1<=S2, S1!=S2 и т.д.

Здесь знак < означает предшествование по алфавиту (подробности см. выше в описании strcmp). Равенство означает точное совпадение строк.

Сцепление (конкатенация): S1+S2

Пример. Вывести в одну строку Memo1 переменные S1 и S2 типа String, разделяя их пробелом:

Memo1->Lines->Add(S1+" "+S2);

Допустимы и операции присваивания вида S1+=S2.

Заметим, что переменной типа String можно присваивать и значение большинства других типов: символьных (char, массив char), числовых (int, double и т.д.), при этом они автоматически преобразуются к типу String. Аналогично, если в бинарной операции первый операнд имеет тип String, второй также преобразуется к типу String:

S1="Пример:";

S2=23.5; // Равносильно S2=FloatToStr(23.5);

Memo1->Lines->Add(S1+" "+S2);

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

Основные методы типа String (и типы их результатов, если они есть):

int Length () - длина строки (количество символов в ней);

String SubString (int i, int n) - копирует из строки подстроку, начиная с i-ой позиции, длиной n символов. Исходная строка не изменяется. (Если в исходной строке, начиная с i-ой позиции, содержится меньше n символов, метод выделяет столько символов, сколько есть).

Пример: Вывести все символы строки, кроме первого:

Edit1->Text=s.SubString(2, s.Length()-1);

Insert (String S2, int i) - вставляет строку S2 в середину строки, начиная с i-ой позиции;

Delete (int i, int n) - удаляет из строки n символов, начиная с i-ой позиции. (Если в исходной строке, начиная с i-ой позиции, содержится меньше n символов, метод удаляет имеющиеся символы с i-ой позиции).

Пример: Заменить в строке S символы с 3-го по 7-ой на многоточие.

S.Delete(3,5);

S.Insert("...",3);

int Pos (String S2) - ищет первое вхождение подстроки S2 в данной строке. Результат - номер позиции, начиная с которой в строке содержится S2, либо 0, если S2 в ней не содержится.

Пример:

S1="Ababab", S2="ab";

i=S1.Pos(S2); // i=3

char * c_str () - преобразует строку к типу "массив char" (см. ниже).

Наконец, наряду с методами, для типа String существуют также функции, например функции преобразования к заданному регистру. Они преобразуют не только латинские, но и русские буквы. Они могут применяться с целью регистро-нечувствительного сравнения:

String AnsiUpperCase (String S); ее результат получается из строки S преобразованием всех букв к верхнему регистру (большие буквы);

String AnsiLowerCase (String S); ее результат получается из строки S преобразованием всех букв к нижнему регистру (малые буквы);

Пример:

S1="Язык - Java";

S2=AnsiUpperCase(S1); // S2="ЯЗЫК - JAVA"





Дата публикования: 2014-11-04; Прочитано: 296 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...