Comment puis-je obtenir la regex mentionné in this article fonctionnant avec preg_match en php?Url Correspondant à l'aide de l'expression rationnelle de Gruber en PHP
<?php
preg_match("\b(([\w-]+://?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/)))/i", $text, $matches);
print_r($matches);
?>
En utilisant le code ci-dessus, je reçois l'erreur suivante:
Warning: preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash...
Notez que cette expression régulière autorisera les URL comme 'http: // ./'et' http: // ??/'. Si ce n'est pas un problème pour vous, vous devriez vraiment utiliser 'filter_var ('http://www.google.com/', FILTER_VALIDATE_URL)' à la place, puisqu'il s'agit d'une fonction PHP intégrée. –