Всем привет, у меня есть регулярное выражение, которое валидирует ссылки, если вкратце:
1. Пропускает одиночные ссылки
2. Пропускает несколько ссылок только используя разделитель между ними (точка с запятой и пробел)
3. Не пропускает слипшиеся ссылки (www.example1.comwww.example2.com)
4. Проверяет, что ссылки начинаются с http, https, либо с www
У меня возникла проблема с третьим пунктом:
Регулярка не пропускает слипшиеся ссылки, начинающиеся с http или https, но пропускает ссылки, начинающиеся с www (как в примере в третьем пункте)
Я пытался решить проблему, сделав после домена обязательными либо слеш, либо знак вопроса (на случай query-параметров). Однако сейчас ссылки валидны, если только после домена стоит слеш либо знак вопроса.
Вопрос: Как сделать так, чтобы после домена содержимое могли идти только после слеша или знака вопроса, и при этом учесть, что после домена может ничего не быть и в таком случае ссылка должна быть валидной
Lynn «Кофеман», требование заказчика таково, чтобы нельзя было указать несколько слипшихся ссылок, только через разделитель, тоесть www.example1.com; www.example2.com
Проверяет, что ссылки начинаются с http, https, либо с www
Откуда вот это "www"?
Во-первых это совершенно не показатель, что это начало следующей ссылки.
Во-вторых сейчас практически никто не делает домен второго уровня такой, тк он не нужен.
В-третьих, он не говорит о том, какой протокол нужно использовать (http или Https) => без протокола ссылка не может быть валидной.
ddd2305, а какую проблему таким образом хочет решить заказчик? Ну и далеко не все пожелания заказчика нужно пытаться выполнить - иногда нужно аргументированно доказать ему, что он дурак.
Ну или подумать как ещё можно это сделать, исходя из того кто и как пользуется продуктом.