Отличаются ли эти шаблоны регулярных выражений?

Веб-сайт, над которым я работал, не будет сопоставлять данные с использованием шаблона регулярного выражения PHP (preg_match), который работает везде. иначе я проверил это. Вот этот шаблон:

<channel.*?>(.*?)</channel>

Он сопоставляется с RSS-каналом, имеющим тег канала.

Теперь сервер, над которым я работаю, будет давать правильный результат, только если изменить его на:

<channel.*?>(.*)?</channel>

Мое регулярное выражение не самое лучшее в мире, поэтому мне интересно, может ли кто-нибудь сказать мне, есть ли какая-либо существенная разница между двумя узорами.

Небольшое примечание: я понимаю, что было бы лучше использовать SimpleXML и т. д., но это регулярное выражение взято из предыдущего приложения, и по разным причинам мне не разрешено его изменять.

Заранее спасибо за любую информацию.

7
задан Qtax 21 June 2012 в 14:02
поделиться