Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для System Failure

Старожил


Сообщения: 175
Благодарности: 15

Профиль | Отправить PM | Цитировать


Цитата Sham:
(/<body[^>]*>([\s\S]*?)<\/body>/i) »
можно, пожалуйста, если это не составит большого труда, пояснить синтаксис этого выражения?
я его понял так:

/<body - начало тэга, все понятно.
[^>] исключаем из искомого символ > - зачем?
*> - повторение неких предшествующих элементов ноль или более раз, затем символ ">" (тоже не совсем понятно зачем вначале исключать, потом опять включать символ ">")
([\s\S]*?) - набор любых символов неограниченое количество раз (зачем "?", почему не достаточно одной "*" и для чего заключать всё это в круглые скобки?)
<\/body>/i - ищем закрывающий тэг, и чтобы "/" воспринимался литерально - используется перед ним "\". i - для не зависимости от регистра.

Заранее огромное спасибо. Объяснять не обязательно, может со временем сам разберусь, но если найдете свободную минуту, был бы очень благодарен.

Добавлено:
Просмотрев как работает этот код, теперь кажется понял зачем круглые скобки... Таким образом для вывода сохраняются только данные, попадающие под "[\s\S]*?", тогда как сами тэги исключаются.

Отправлено: 00:26, 25-07-2009 | #10