Выберите неправильные URL в MySQL

Я пытаюсь выбрать пользователей, у которых неверно сформирован URL-адрес их веб-сайта.

Мне необходимо:

  1. не выбирайте пустые поля «Интернет»

  2. выберите поля «Интернет», где URL искажен.

Я ввел один некорректный URL-адрес — www.te st.com — с пробелом между ними, который я использую для проверки. Я пробовал этот запрос, но список результатов пуст.

$sql = "SELECT *
FROM calendario
WHERE `Internet` NOT REGEXP '^(https?:\/\/|www\.)[\.A-Za-z0-9\-]+\.[a-zA-Z]{2,4}' AND `Internet` !='' ORDER BY Data DESC";

Кто-нибудь знает, что я делаю не так с проверкой URL MySQL?

0

Решение

. как метасимвол должен быть экранирован двойной кавычкой \\. или помещены в класс персонажа [.]

Следующий запрос должен работать как положено:

SELECT *
FROM calendario
WHERE `Internet` NOT REGEXP '^(https?:\/\/|www\\.)[-.A-Za-z0-9]+\\.[a-zA-Z]{2,4}'
AND `Internet` !='' ORDER BY Data DESC
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector