Регулярные выражения Perl

Регулярные выражения Perl

Регулярные выражения (шаблоны). В данной главе описывается синтаксис регулярных выражений. Чаще всего в Perl они используются в операторах поиска и замены таких как s//, m/, операторах связки =~ или != и т.д. Как правило все эти операторы имеют схожие опции такие как: i — не различать строчные и заглавные буквы. m — считать строку многострочной. s — однострочная строка. x — […]

Далее …

use strict

Как мы объявляли переменные? #/usr/bin/perl $alpha = 1; $beta = 2; # … $alpha = $alpha + $beta; # alpha равно 3 Однако что произойдет, если мы случайно сделаем опечатку в имени одной из переменных? # опечатка в имени переменной — bAta вместо bEta $alpha = $alpha + $bata; # alpha равно 1 Программист допускает подобные ошибки довольно часто — чаще, чем думают многие. При этом, из-за […]

Далее …

Условные операторы Perl

Начнем сразу с примеров. $a = shift; if($a > 10) { print «a > 10\n«; } В отличие от Си, опустить фигурные скобки тут нельзя. Точнее говоря, способ есть, но о нем чуть ниже. Конструкции if-else и if-else-if-… на языке Perl выглядят следующим образом: $a = shift; if($a > 10) { print «a > 10\n«; […]

Далее …

Первый скрипт на Perl

Давайте напишем наш первый скрипт на Perl! #!/usr/bin/perl $name = shift(); print(«Hello, $name!\n«); Запускаем скрипт: $ chmod u+x 1.pl $ ./1.pl afiskon Hello, afiskon! Тут все очень просто: Имена скалярных переменных (то есть не массивов и не хэшей, что это такое — см ниже) начинаются со знака доллара. Функция shift возвращает очередной аргумент скрипта. Другими […]

Далее …

Основы Perl — ввод/вывод, файлы, каталоги

Ввод и вывод Как всегда, давайте начнем с примера: #!/usr/bin/perl use strict;while(my $line = <STDIN>) { chomp($line); # отсекаем символ \n last if($line eq «exit»); print «Вы ввели ‘$line’. Для выхода из цикла введите exit\n»; } Рассмотрим четвертую строку. STDIN — это файловый дескриптор, связанный со стандартным потоком ввода. Чтение из файла производится с помощью оператора «треугольные скобки». Да, это не так привычно, как readln, […]

Далее …

Перловка

#!/usr/bin/perl #use Unicode::String qw(utf8 latin1 utf16be); use Tkx; use utf8; use Encode qw(encode decode); ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time); my @abbr = qw( января февраля марта апреля мая июня июля августа сентября октября ноября декабря ); my @dayabbr = (1..31); my $dat= «$dayabbr[$mday-1] $abbr[$mon]»; my $filename = «cal_primet.txt»; open(my $fh, ‘

Далее …