Проблема при проверке URL с помощью ASP.Net Regular Expression Validator - PullRequest
0 голосов
/ 12 мая 2011

Я пытаюсь использовать средство проверки регулярных выражений ASP.Net для проверки поля URL.URL-адрес www.tachibana.co.jp/tokyosys.htm.Используется проверочное выражение ValidationExpression="http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?", но это не работает.Что-то не так с регулярным выражением или URL-адресом?

Правила приведены ниже.

  1. Это должно быть проверено, даже если (http или https) включено или нет.
  2. Он также должен обрезать URL-адрес перед проверкой.
  3. Он также должен проверять URL-адреса поддомена
  4. Он также должен проверять URL-адреса для файла в домене или субдомене.

спасибо

Ответы [ 4 ]

3 голосов
/ 12 мая 2011

Проблема в том, что ваше регулярное выражение

http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

ожидает, что URL начинается с http:// или https://.Кроме того, тире внутри класса персонажа неуместна.

Редактировать: Теперь, когда вы опубликовали свои правила, я предлагаю следующее:

^\s*((?:https?://)?(?:[\w-]+\.)+[\w-]+)(/[\w ./?%&=-]*)?\s*$

После успешного совпадения группа 1 будет содержатьдомен и группа 2 будут содержать путь к файлу, если он есть.

0 голосов
/ 26 марта 2014
var re = /(http(s)?:\\)?([\w-]+\.)+[\w-]+[.com|.in|.org]+(\[\?%&=]*)?/
if (re.test(txt)) {
alert('Valid URL')
}

вы можете добавить домен, необходимый в последнем поле com, in, org

0 голосов
/ 18 июня 2013
"(http(s)?://)?([\www]+\.)+[\w-]+(/[\w- ;,./?%&=]*)?" 
0 голосов
/ 12 мая 2011
^(?i)(http|ftp|https)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(/\S*)?$
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...