Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовик по ТЯП. Вариант 18.doc
Скачиваний:
8
Добавлен:
01.05.2014
Размер:
107.01 Кб
Скачать

Зарезервированные функции:

Примечание: нумерация символов в строках начинается с нуля, т.е. первый символ строки имеет номер ‘0’, второй - ‘1’ и т.д.

1) Конкатенация двух строк

concat(<ExpressionR>,<ExpressionR>)

Конкатенация двух строк, результат – строка.

str1 = <ExpressionR>, ее длина l1

str2 = <ExpressionR>, ее длина l2

Вычисляются значения параметров, они должны быть типа string, иначе пользователю выдается сообщение об ошибке.

str3 = str1 + str2, ее длина l3 = l1 + l2

Результирующая строка получается конкатенацией двух строк, которые переданы в качестве параметров (создается новая переменная типа String, в нее записывается значение первой строки и приписывается вторая строка); длина результирующей строки равна сумме длин строк str1 и str2. Тип возвращаемого значения функции – строка.

Пример: concat(“123”, “abc”) возвращает строку “132abc”.

2) Замена подстроки в строке

replace(<ExpressionR>, <ExpressionR>, <ExpressionR>)

Первый параметр функции – входная строка sourceStr, второй параметр – строка, которую надо заменить strOld, третий параметр – строка, на которую надо заменить strNew.

Вычисляются значения параметров, они должны быть типа string, иначе пользователю выдается сообщение об ошибке.

В строке происходит sourceStr происходит поиск всех вхождений подстроки strOld, каждое вхождение этой подстроки заменяется на строку strNew. Причем изменяется значение исходной строки, т.е. новая переменная не создается. Тип возвращаемого значения функции – строка.

Пример: replace (“123qw45qwe”, “qw”, “m”) возвращает строку “123m45me”.

3) Поиск подстроки в строке

find(<ExpressionR>, <ExpressionR>)

Первый параметр функции – входная строка sourceStr, второй параметр – строка, которую нужно найти strToFind.

Вычисляются значения параметров, они должны быть типа string, иначе пользователю выдается сообщение об ошибке.

В строке sourceStr ищется первое вхождение подстроки strToFind, если такое вхождение есть, то тогда функция возвращает номер символа, с которого начинается это вхождение. Если строка не найдена, то возвращается -1. Тип возвращаемого значения функции – целое число int.

Пример: find(“teststr”, “st”) возвращает 2.

4) Вычисление длины строки

length(<ExpressionR>)

Параметр функции – входная строка sourceStr, длину которой надо определить.

Вычисляется значение параметра, он должен быть типа string, иначе пользователю выдается сообщение об ошибке.

Происходит подсчет количества символов в строке sourceStr. Это число возвращается в качестве результата. Длина пустой строки равна нулю. Тип возвращаемого значения функции – целое число int.

Пример: length(“teststr”) возвращает 7.

5) Доступ к подстроке в заданной строке

substring(<ExpressionR>, <DigitSequence>, <DigitSequence>)

Первый параметр функции – входная строка sourceStr, второй параметр – номер символа во входной строке, начало подстроки start, третий параметр – номер символа во входной строке, конец подстроки end.

Вычисляется значение первого параметра, он должен быть типа string, иначе пользователю выдается сообщение об ошибке.

Вычисляются значения второго и третьего параметров, они должны быть типа int, иначе пользователю выдается сообщение об ошибке.

Пусть длина входной строки sourceStr равна length, тогда должно выполняться условие

0<=start<end<length

если оно не выполняется, то пользователю выдается сообщение об ошибке.

Функция возвращает подстроку, которая начинается с символа с номером start во входной строке и заканчивается символом с номером end, при этому создается новый объект типа string.

Тип возвращаемого значения функции – строка.

Пример: subsring(“teststr”, 1, 4) возвращает “est”.

6) Проверка строк на равенство

equal(<ExpressionR>,<ExpressionR>)

Вычисляются значения параметров, они должны быть типа string, иначе пользователю выдается сообщение об ошибке.

Сравниваются значения входных строк. Если длины строк разные, то это значит, что строки не равны, функция возвращает -1, т.е. ложь. Сравнение строк идет до тех пор, пока i-ый символ первой строки не станет отличным от i-ого символа второй строки. Если такое произошло, то функция возвращает -1, т.е. ложь, иначе 1, т.е. истина.

Тип возвращаемого значения функции – целое число int.

Пример: equal(“123”, “abc”) возвращает -1.