Кто-нибудь знает, что не так с этим регулярным выражением? Он отлично работает на таких сайтах, как RegexPal и RegExr, но на PHP он дает мне это предупреждение и никаких результатов:
Warning: preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash
Вот мой код:
preg_match('name="dsh" id="dsh" value="(.*?)"', 'name="dsh" id="dsh" value="123"', $matches);
У вас нет разделителя. Включите шаблон в /
preg_match('/name="dsh" id="dsh" value="(.*?)"/', 'name="dsh" id="dsh" value="123"', $matches);
Для шаблонов, которые включают /
сами по себе, рекомендуется использовать другой разделитель типа ~
или #
чтобы избежать экранирования:
// Delimited with # instead of / preg_match('#name="dsh" id="dsh" value="(.*?)"#', 'name="dsh" id="dsh" value="123"', $matches);
Вам нужны разделители :
preg_match('/name="dsh" id="dsh" value="(.*?)"/', 'name="dsh" id="dsh" value="123"', $matches);