[ главная ]   [ рейтинг статей ]   [ справочник радиолюбителя ]   [ новости мира ИТ ]



Ответов: 0
25-02-12 07:01







   Web - программирование
PHP


ASP






XML



CSS

SSI





   Программирование под ОС











   Web - технологии








   Базы Данных









   Графика






Данные




Web - программирование / Разное /

Учебное пособие по CGI-программированию Страница 6. Операторы

Операторы

Набор операторов в Perl Очень широк,многие из них прямые аналоги имеющихся в других языках,например if,for,while;но есть и значительные улучшения имеющихся и конечно новые...
Тот же самый оператор if имеет две формы (как когда удобнее):

if(условие)оператор;
оператор if условие;
В пару к оператору if имеется оператор unless : означающий if с отрицанием:
unless(($method eq 'GET')||($method eq 'POST')){print "Unsupported method";}
print "Ok" unless $x < $y;
Также в пару while существует until
синтаксис оператора for полностью аналогичен C:
for($i=0;$i<10;$i++){
print $i;
}
новшеством(и приятным) является foreach позволяющий пройтись по всем элементам массива,присваивая по очереди его элементы какой-то переменной, его синтаксис такой:
foreach $переменная (@массив){
блок операторов;
}
или
foreach (@массив){
операторы;
}
Последний пример особенно важен для упрощения вашего тяжкого труда програмиста и демонстрирует интересную особенность Perl-переменную по умолчанию $_: в огромном количестве операторов и функций при опускании аргумента она подразумевается по умолчанию. Она также по умолчанию сопоставляется с регулярным выражением:
следующий пример
@Data=<STDIN>;
foreach(@Data){
chomp;
print if /^From:/;
}
аналогичен такому:
@Data=<STDIN>;
foreach $_ (@Data){
chomp($_);
print $_ if $_ =~ /^From:/;
как видите затраты труда значительно сокращаются,благодаря этому маленькому трюку.
Регулярные выражения.
регулярное выражение записывается между двух слэшей /рег_выр/
if(/abc/){
print '$_ содержит abc\n';
}
это самый простой пример применения регулярного выражения а теперь посложнее вот тут в табличке (из того что я помню наизусть):

СимволЗначениеПример применения
.Соответствует любому символуprint if /ab.c/;
[мн-во симв]Соответствует любому символу из данного мн-ва/[abc]d/;#соответствует ad,bd,cd
[^мн-во]Отрицание мн-ва символов/[^xyz]/;#
(....)Группировка элементов(и также запоминание в переменных $1 $2 $3 ...)/(xyz)*/
/([abc].[^xy]qwerty)/
(..|..|..)Одна из альтернатив 
*повторение образца 0 или более раз/.*/;#соответствует всему
?Повторение 0 или 1 раз/(http://)?.*.cgi/
+Повторение 1 или более раз 
{n,m}повторение от n до m раз 
{n}повторение точно n раз 
{n,}повторение n и более раз 
Спец символы:  
\n ...Управляющие символы:табуляции,возврат каретки,перевод строки..... 
dСоответствует цифре,Аналог [0-9] 
DСоответствует нецифровому симсволу,аналог[^0-9] 
wСоответствует букве 
WСоответствует небуквеному символу 
sСоответствует пробельным символам(пробелы,табуляции,новые строки..) 
SСоответствует непробельному символу 
Соответствует границе слова$test1="this is test";
$test2="wise";
if($test1=~/is/){print "1";}#соответствует
if($test2=~/is/){print "2";}#нет
BСоответствует не границе слова/BisB/ соответсвует 'wise' но не 'is'

Для того чтоб поместить в регулярное выражение любой специальный символ,поставьте реред ним обратный слэш Заставить Perl игнорировать регистр можно поставив i после регулярного выражения

print "Are you sure?:";
$answer=<STDIN>;
if($answer=~/Y/i){
#че-нибудь сделаем...




Комментарии

 Ваш комментарий к данному материалу будет интересен нам и нашим читателям!



Последние статьи: Web - программирование / Разное /

Учебное пособие по CGI-программированию Страница 30. Счётчик посещений
08-04-2010   

Наверное тоже одним из часто встречающихся приложений CGI являются счетчики посещений. Они стоят практически на каждой страничке, возможно даже и у вас. Но иногда вас не устраивает тот факт, что счетчик лежит где-то в другом месте... подробнее

Кол. просмотров: общее - 3944 сегодня - 2

Учебное пособие по CGI-программированию Страница 28. Кто посещает мою страничку?
08-04-2010   

Вам иногда хотелось наверное узнать,кто же смотрит на вашу страничку,откуда и когда ваша страничка посещалась. Бывают такие вопросы? Кто-то считает,что ответить на них нельзя. Но вы не верьте этому расхожему мнению... подробнее

Кол. просмотров: общее - 3635 сегодня - 2

Учебное пособие по CGI-программированию Страница 27. Trics and traps
08-04-2010   

Я так решил назвать эту часть,потому что это название больше всего соответствует. Я вам в этой части расскажу о всяких тонких и неочевидных местах и о том как с этим боротся... подробнее

Кол. просмотров: общее - 3837 сегодня - 3

Учебное пособие по CGI-программированию Страница 26. Несколько слов об отладке
08-04-2010   

CGI-программы -не самые простые в отладке,по сложности отладки они способны сравнится лишь с отладкой драйверов. Вся сложность заключается в том,что скрипт выполняется не как обычная программа. Он выполняется в специальной среде сервера,которая создается при клиентском запросе... подробнее

Кол. просмотров: общее - 3830 сегодня - 3

Учебное пособие по CGI-программированию Страница 25. Анимация
08-04-2010   

Когда говорят о каком-то популярном сайте,то частенько к преимуществам относят и анимацию. Действительно,когда изображение изменяется (и особенно к месту ;)),то это смотрится и пользователю нравится... подробнее

Кол. просмотров: общее - 3616 сегодня - 2



  WWW.COMPROG.RU - 2009-2012 | Designed and Powered by Zaipov Renat | Projects