Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
$string = "some@mail.ru";
if($string =~ /([^<>(),;s]+@[^<>(),;s]+)/){
print "Valid mail";
}else{
print "Invalid mail";
}
Это примитивная проверка, и рассчитана она только на то, чтобы пользователь не ошибся при вводе. Лучше всего проверить, правилен ли почтовый адрес – это послать письмо с подтверждением.
Выделяем имя и расширение программы:
$progname = "/usr/bin/perl.txt";
$progname =~ m%(^.*/)(.*).(.*)%;
# $1 – путь до программы: /usr/bin/
# $2 – программа: perl.txt
# $3 – программа без расширения: perl
# $4 – расширение программы: txt
В основном это нужно для консольных приложений, вместо $progname, подставьте специальную переменную $0, хранящую имя данного исполняемого файла.
Поиск n-го совпадения, пример: в каждом четном русскоязычном слове у каждой нечетной буквы поднять регистр. Решение:
use locale;
# для русских букв (если настроен локальный контекст), т.е. утверждение w+ используется для русских слов
$string = "здесь какие-нибудь слова и что-нибудь еще...";
$wc=0;
$string =~ s/(w+)/
if(++$wc % 2 == 0){
chars($1)
}else{
$1
}
/igex;
sub chars{
my($text)=@_;
my($res,$chr,$i);
for($i=0;$i<=length($text);$i++){
$chr = substr($text,$i,1);
if($i % 2 == 0){
$res.=uc($chr);
}else{
$res.=$chr;
}
}
return $res;