Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
reg.doc
Скачиваний:
5
Добавлен:
09.11.2019
Размер:
143.87 Кб
Скачать

Функция chop()

chop [<список>]

удаляет последний символ из всех элементов списка, возвращает последний удаленный символ. Список может состоять из одной строки.

Если аргумент отсутствует, операция удаления последнего символа применяется к встроенной переменной $_. Обычно применяется для удаления завершающего символа перевода строки, остающегося при считывании строки из входного файла.

Функция join()

join <выражение>, <список>

объединяет отдельные строки списка в одну, используя в качестве разделителя строк значение выражения, и возвращает эту строку.

Функция split()

split [/<образец>/[, <строка> [, <лимит>]]]

разбивает строку на отдельные строки, используя в качестве разделителя образец. В списковом контексте возвращает массив полученных строк, в скалярном контексте — их число.

Если функция split() вызывается в скалярном контексте, выделяемые строки помещаются в предопределенный массив @_. Об этом не следует забывать, так как массив @_ обычно используется для передачи параметров в подпрограмму, и обращение к функции split() неявно в скалярном контексте эти параметры уничтожит.

Параметр <лимит> задает максимальное количество строк, на которое может быть разбита исходная строка.

Если строка не задана, то используется $_. Если не задан образец, то строка разбивается по пробельным символам.

Пример - pr_chop_split_join.pl

$_ = <>; chop; print "Число полей во входной строке '$_' равно ", $n=split; print "\nВходная строка разбита на строки:\n"; foreach $i (@_) { print $i . "\n"; } print "Объединение списка строк в одну строку через '+':\n"; $joined = join "+", @_; print "$joined\n";

Функция chop без параметров применяется к переменной $_. В операции print вторым операндом является выражение $n=split;, в котором функция split вызывается в скалярном контексте и без параметров. Поэтому она применяется по умолчанию к переменной $_. В качестве разделителей полей по умолчанию используется множество пробельных символов, а результат помещается в массив @_. Затем к массиву @_ применяется функция join, объединяющая строки-элементы массива в одну строку.

Если ввести строку 'раз два три', то вывод будет иметь вид:

Число полей во входной строке 'раз два три' равно 3 Входная строка разбита на строки: раз два три Объединение списка строк в одну строку через '+': раз+два+три

Функция index ()

index <строка>, <подстрока>[, <позиция>]

возвращает позицию первого вхождения указанной подстроки в заданную строку или -1, если подстрока не найдена. Если задан параметр <позиция>, то поиск подстроки осуществляется, начиная с заданной позиции в строке (0 – начало строки).

Предопределенная переменная $ [ содержит индекс первого элемента в массиве и первого элемента в строке. По умолчанию ее значение равно 0. В принципе его можно изменить, но делать это не рекомендуется. Таким образом, по умолчанию значение параметра ПОЗИЦИЯ полагается равным 0.

Функция rindex ()

rindex <строка>, <подстрока>[, <позиция>]

возвращает позицию последнего вхождения указанной подстроки в заданную строку или -1, если подстрока не найдена. Если задан параметр <позиция>, то поиск подстроки осуществляется до заданной позиции в строке (включая символ в этой позиции).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]