Разработка динамических сайтов
SEO услуги
Управление контекстной рекламой

Вход на хостинг

Имя пользователя:*

Пароль пользователя:*

IT-новости

20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла

Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......

подробнее

30.07.2015 Ищем уникальный контент для сайта

Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......

подробнее

11.05.2015 Распространённые ошибки разработчиков сайтов

Не секрет, что в сети Интернет насчитывается миллионы сайтов, и каждый день появляются тысячси новых......

подробнее

n  $* – разрешает выполнять поиск в многострочных файлах (булевая переменная);

n  @- – спецмассив, который содержит начальную позицию найденного совпадения;

n  @+ – массив, содержащий позицию последнего найденного совпадения.

Вышеперечисленные метасимволы, квантификаторы, мнимые символы, специальные переменные – это та часть статьи, к которой вы будете обращаться чаще всего – поэтому я собрал все вместе.

А далее будем рассматривать более сложные решения задач, с пояснениями.

Начнем с создания регулярных выражений. А более точно со специальных переменных:

$string = "one two three four five";

$string =~ m/three/;

 

print $`; # результат: "one two "

print $'; # результат: " four five"

print $&; # результат: "three"

# теперь насчет массивов @+ и @-

print $-[0]; # результат: 8

print $+[0]; # результат: 13

# переменные $#-, $#+ указывают на длину @-, @+ соответственно

# с помощью функции substr() можно получить переменные $`, $',

# $&, например

 

$before_pat = substr($string,0,$-[0]);             # аналог $`

$after_pat = substr($string,$+[0]);         # аналог $'

$pattern = substr($string,$-[0],$+[0]-$-[0]);      # аналог $&

Переменная $^R, пример:

$string = "some text";

$qwer =~ /(?{$var1=2.3;$var2=3.2})/;

print $^R

Результат: 3.2

Переменная $+, пример:

$string = "some text";

$string =~ m/(w+)s+(w+)/;

print $+;

Результат: text

Переменная $*, пример:

$string = "couple of lines goes bellow...";

print $string =~ m/^lines/; # в этом случае пустая строка ""

$*=1; # после присвоения переменной $* истины, результат будет

print $string =~ m/^lines/; # – истина

Используем модификатор e для оператора s/.../.../:

$string = "words don't come easy";

$string =~ s/(w+)/uc($1)/eg;

print $string;

Данный фрагмент кода «поднимает» регистр букв у всех слов из строки $string (глобально), вот что получается: WORDS DON'T COME EASY


Предыдущая страницаОглавлениеСледующая страница
 
[001] [002] [003] [004] [005] [006] [007] [008] [009] [010] [011] [012] [013] [014] [015] [016] [017] [018] [019] [020]
[021] [022] [023] [024] [025] [026] [027] [028] [029] [030] [031] [032] [033] [034] [035] [036] [037] [038] [039] [040]
[041] [042] [043] [044] [045] [046] [047] [048] [049] [050] [051] [052] [053] [054] [055] [056] [057] [058] [059] [060]
[061] [062] [063] [064] [065] [066] [067] [068] [069] [070] [071] [072] [073] [074] [075] [076] [077] [078] [079] [080]
[081] [082] [083] [084] [085] [086] [087] [088] [089] [090] [091] [092] [093] [094] [095] [096] [097] [098] [099] [100]
[101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120]
[121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140]
[141] [142] [143] [144] [145] [146] [147] [148] [149] [150] [151]

+7 (831) 413-63-27
ООО Дельта-Технология ©2007 - 2016 год
Нижний Новгород, ул. Дальняя, 17А.
Rambler's Top100