Я ищу строку для URL-адресов ... и мой preg_match дает мне неправильное количество совпадений для моей демонстрационной строки.preg_match возвращает странные результаты
Строка:
Эй, пришел проверить мой сайт на www.example.com
Функция:
preg_match("#(^|[\n ])([\w]+?://[\w]+[^ \"\n\r\t<]*)#ise", $string, $links);
echo count($links);
Результат выходит как 3.
Может ли кто-нибудь помочь мне решить эту проблему? Я новичок в REGEX.
Можете ли вы объяснить, как вы пытаетесь обнаружить URL-адрес и какой результат вы ожидали? Похоже, вы пытаетесь обнаружить «: //», но ваша строка не содержит этого. –
Модификатор * e * используется только для 'preg_replace'. – Gumbo
Проверьте возвращаемое значение 'preg_match', чтобы увидеть, соответствует ли regexp чему-либо. –