Функция join

Функция join не использует шаблоны, но выполняет операцию, обратную по отношению к split. Если split разбивает строку на фрагменты, join «склеивает» набор фрагментов в одну строку. Вызов join выглядит так:

my $result = join $glue, @pieces;


Первый аргумент join определяет произвольную соединительную строку. Остальные аргументы определяют список фрагментов. Функция join вставляет соединительную строку между парами фрагментов и возвращает итоговую строку:

my $x = join ":", 4, 6, 8, 10, 12; # $x содержит "4:6:8:10:12"


В этом примере объединяются пять фрагментов, поэтому между ними вставляются четыре соединительные строки (двоеточия). Соединительная строка добавляется только между элементами, но не в начале или в конце списка. Это означает, что количество соединительных строк всегда на 1 меньше количества элементов в списке. Если список не содержит хотя бы двух элементов, соединительных строк вообще не будет:

my $y = join "foo", "bar"; # Получается только "bar",
# соединитель foo лишний
my @empty; # Пустой массив
my $empty = join "baz", @empty; # Элементов нет, пустая строка


Используя переменную $x из предыдущего примера, мы можем разбить строку и собрать ее заново с другим разделителем:
my @values = split /:/, $x; # @values содержит (4, 6, 8, 10, 12)
my $z = join "-", @values; # $z содержит "4-6-8-10-12"


Хотя split и join хорошо работают в сочетании друг с другом, не забывайте, что первый аргумент join всегда содержит строку, а не шаблон.
Теги:
регулярные выражения
Добавлено: 20 Июля 2018 19:34:14 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...