Соответствие веб-адреса через регулярное выражение - PullRequest
0 голосов
/ 20 февраля 2009

Я хочу сопоставить веб-адрес с помощью регулярных выражений, который должен захватывать http://www.google.com, а также www.google.com, т. Е. С протоколом и без него.

Ответы [ 4 ]

3 голосов
/ 20 февраля 2009

Ну, это будет зависеть от того, что именно вы хотите захватить ("FTP"? "/Index.htm"?), Потому что общий захват URI на основе стандарта RFC очень сложен, но вы могли бы начать с: *

/^((https?\:\/\/)?([\w\d\-]+\.){2,}([\w\d]{2,})((\/[\w\d\-\.]+)*(\/[\w\d\-]+\.[\w\d]{3,4}(\?.*)?)?)?)$/

Сложно увидеть?

2 голосов
/ 20 февраля 2009

Попробуйте RegexLib .

1 голос
/ 20 февраля 2009

Чтение RFC 3986 . Это не так просто, как вы думаете. Работа проще, если у вас есть только небольшой набор URL для разбора.

0 голосов
/ 20 февраля 2009

Почему бы не

/google\.com/

Он ловит http://www.google.com, www.google.com и даже google.com бесплатно! : -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...