Сопоставление URL-адресов с использованием регулярного выражения Грубера в PHP
-
19-09-2019 - |
Вопрос
как мне получить упомянутое регулярное выражение в этой статье работаете с preg_match в php?
<?php
preg_match("\b(([\w-]+://?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/)))/i", $text, $matches);
print_r($matches);
?>
Используя приведенный выше код, я получаю следующую ошибку:
Warning: preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash...
Решение
Попробуй это:
preg_match("#\b(([\w-]+://?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/)))#i", $text, $matches);
Вам не хватало разделителей регулярных выражений (обычно /
, но используя #
здесь, потому что это удобнее для URL-адресов)
Не связан с StackOverflow