Регулярное выражение
Таблица 2.2. Регулярное выражение поиска последнего знака препинания абзаца
Символы |
Описание |
||
[\.!\?] |
Один из возможных символов: точка, восклицательный и вопросительный знаки. Заметьте, что вопросительный знак предварен обратной косой чертой, т. к. иначе Dreamweaver воспринял бы его как литерал Этот литерал обозначает конец строки |
||
Хорошо, при поиске подстрок регулярные выражения очень нам помогают. Но помогут ли они при замене?
Еще как!
Предположим, например, что нам необходимо найти все нужные адреса электронной почты и заменить у них окончание "com" на "ш". Для поиска в этом случае мы используем уже знакомое и работающее регулярное выражение:
"/b(.+@.+\.)com"
Постойте, но зачем мы взяли часть его в скобки? Ведь скобки используются для группировки, отделения части регулярного выражения от других частей. Здесь же ничего отделять не нужно — все и так работает.
А вот зачем.
Дело в том, что Dreamweaver, кроме всего прочего, помещает подстроку, совпадающую с заключенной в скобки частью регулярного выражения, в особую ячейку памяти, откуда ее можно потом будет извлечь. Таких ячеек памяти всего девять, и обращаться к их содержимому можно по номеру. В частности, извлечь содержимое первой ячейки в нашем случае можно так:
"$1"
Тогда заменить окончание почтового адреса можно с помощью такого регулярного выражения:
"$1ru"
Здесь все совсем просто. Мы берем первую подстроку и добавляем к ней окончание "ru". Наберите в окне документа несколько произвольных адресов электронной почты и проверьте наши выражения. Они работают.
Напоследок самое время привести полный список всех литералов регулярных выражений. Они перечислены в табл. 2.3.