простое регулярное выражение: несколько точек (.) - PullRequest
1 голос
/ 28 января 2011

Я пытаюсь удалить все после .com, .etc, в URL; чтобы сделать его более значимым

так

sub.domain.com/324fr9?=awerf?=awrf

превращается в

sub.domain.com/

за исключением того же регулярного выражения, которое не работает для

noSubDomain.com/crap?=yes123456789timesOver

потому что у него только одна точка, а не две!

Вот мое регулярное выражение (javascript):

/.*:\/\/.*\..*\.com/g

Ответы [ 3 ]

7 голосов
/ 28 января 2011

Если вы сегментируете URL и хотите сделать это в perl CPAN, URI-модуль может быть лучшим вариантом. $uri->host - это то, что вы хотите, но вы можете делать много других вещей, используя модуль URI.

2 голосов
/ 28 января 2011

В Javascript есть объект window.location, который лучше использовать для получения информации об URL-адресе - http://www.w3schools.com/jsref/obj_location.asp

Иначе, вы можете просто создать свое регулярное выражение для удаления всего после /.

url = url.replace(/\/.*/g, "/");
0 голосов
/ 28 января 2011
/.*:\/\/(.*\.)?.*\.com/g

Вот часть, которая имеет значение: (.*\.)? Знак вопроса говорит о том, что все в этой группе является необязательным.

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