Массив Perl — это переменная списка, в которой хранятся скалярные значения. Переменные могут быть разных типов.
Переменные массива начинаются с @. Для доступа к элементам массива используйте для чтения формат $ + имя переменной + [значение индекса] . Пример следующий:
В программе символ $ экранируется символом , что позволяет вывести его как есть.
$hits[0] = 25$hits[1] = 30$hits[2] = 40$names[0] = google$names[1] = codercto$names[2] = taobao
Переменные массива начинаются с символа @ , а элементы помещаются в скобки. Вы также можете определить массив, начинающийся с qw .
@array = (1, 2, 'Привет');@array = qw/Это массив/;
Второй массив использует оператор qw// , который возвращает список строк с элементами массива, разделенными пробелами. Конечно, вы также можете использовать несколько строк для определения массива:
@days = qw/googletaobao...codercto/;
Вы также можете присвоить значения массиву по индексу следующим образом:
$array[0] = 'Понедельник';...$array[6] = 'Воскресенье';
Для доступа к элементам массива используйте для чтения формат $ + имя переменной + [значение индекса] . Пример следующий:
Googleтаобаокодерктокодеркто
Значения индекса массива начинаются с 0, то есть 0 — первый элемент, 1 — второй элемент и так далее.
Отрицательные числа читаются в обратном направлении, -1 – первый элемент, -2 – второй элемент.
Perl предоставляет формат массива, который можно выводить последовательно. Формат: начальное значение + .. + конечное значение . Пример следующий:
1 2 3 4 5 6 7 8 9 1010 11 12 13 14 15 16 17 18 19 20a bcdefghijklmnopqrstuv wxyz
Размер массива определяется скалярным контекстом внутри массива. :
@array = (1,2,3);print "размер массива: ",скаляр @array,"n";
Длина массива возвращает физический размер массива, а не количество элементов. Мы можем увидеть следующий пример:
Размер массива: 51 Максимальный индекс: 50
Как видно из вывода, элементов массива всего четыре, но размер массива равен 51.
Perl предоставляет несколько полезных функций для добавления и удаления элементов массива.
Если у вас раньше не было опыта программирования, вы можете спросить, что такое функция. На самом деле, print, который мы использовали ранее, является функцией вывода.
В следующей таблице перечислены часто используемые функции операций с массивами:
серийный номер | Тип и описание |
---|---|
1 | нажмите @ARRAY, СПИСОК Поместите значение списка в конец массива |
2 | поп @ARRAY Вытолкните последнее значение массива и верните его |
3 | сдвиг @ARRAY Извлекает первое значение массива и возвращает его. Значение индекса массива также уменьшается на единицу. |
4 | отменить сдвиг @ARRAY, СПИСОК Помещает список перед массивом и возвращает количество элементов в новом массиве. |
Мы можем вырезать массив и вернуть новый массив после вырезания:
Weibo QQ Facebook
Индекс массива должен указывать допустимое значение индекса, которое может быть положительным числом, за которым следует отрицательное число. Каждое значение индекса разделяется запятой.
Если это непрерывный индекс, вы можете использовать .. для указания указанного диапазона:
Weibo QQ Facebook
Функция splice() используется для замены элементов массива в Perl. Формат синтаксиса следующий:
соединение @ARRAY, OFFSET [ , LENGTH [ , LIST ] ]
Описание параметра:
@ARRAY: Массив, который нужно заменить.
СМЕЩ: исходное положение.
ДЛИНА: количество элементов для замены.
СПИСОК: Список заменяемых элементов.
В следующем примере заменяются 5 элементов массива, начиная с 6-го элемента:
До замены - 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 После замены - 1 2 3 4 5 21 22 23 24 25 11 12 13 14 15 16 17 18 19 20
Чтобы преобразовать строку в массив в Perl, используйте функцию Split(). Синтаксис следующий:
разделить [ ШАБЛОН [ , EXPR [ , ПРЕДЕЛ ] ] ]
Описание параметра:
ШАБЛОН: разделитель, по умолчанию — пробел.
EXPR: укажите количество строк.
LIMIT: если этот параметр указан, возвращается количество элементов в массиве.
окомвейбо
В Perl функция join() используется для преобразования массива в строку. Синтаксис следующий:
присоединяйтесь к EXPR, LIST
Описание параметра:
ЭКСПР: Разъем.
СПИСОК: Список или массив.
www-codercto-comgoogle,taobao,codercto,weibo
Сортировка массивов в Perl использует функцию sort(), ее синтаксис следующий:
сортировать СПИСОК [ПОДПРОГРАММ]
Описание параметра:
ПОДПРОГРАММА: Укажите правила.
СПИСОК: Список или массив.
Перед сортировкой: Google Taobao Codercto Facebook После сортировки: Facebook Google Codercto Taobao
Примечание. Сортировка массивов основана на числовых значениях ASCII. Поэтому, когда мы сортируем массив, лучше всего перед сортировкой преобразовать каждый элемент в нижний регистр.
Специальная переменная $[ представляет первое значение индекса массива, которое обычно равно 0. Если мы установим $[ равным 1, первое значение индекса массива будет равно 1, второе — 2 и так далее. Примеры следующие:
Веб-сайт: google taobao codercto facebook@sites[1]: google@sites[2]: taobao
В общем, мы не рекомендуем использовать специальную переменную $[ . В новой версии Perl от этой переменной отказались.
Элементы массива разделяются запятыми. Мы также можем использовать запятые для объединения массивов, как показано ниже:
числа = 1 3 4 5 6
Также возможно встроить несколько массивов в один массив и объединить их с основным массивом:
числа = 1 3 5 2 4 6
Список можно использовать как массив. Укажите значение индекса после того, как список сможет прочитать указанный элемент, как показано ниже:
Значение var = 1
Точно так же мы можем использовать .. в массиве для чтения элементов в указанном диапазоне:
значение списка = 4 3 2