2010-08-07 2 views
1

Кто-нибудь знает Regexp для AS3, чтобы получить доменное имя из URL? например: «http://www.google.com/translate» получит «http://www.google.com»Regexp для получения домена из URL

+0

Если вам не нужен TLD с двойными окончаниями (co.uk, co.jp и т. Д.), То проверьте http://stackoverflow.com/questions/863297/regular-expression-to-retrieve-domain-tld или google для "RegExp tld" –

ответ

7

Там это очень полный класс утилита для работы с URI, в as3corelib. Возможно, вы захотите использовать это вместо того, чтобы кататься самостоятельно.

import com.adobe.net.URI; 
var uri:URI = new URI("http://www.google.com/translate"); 
trace(uri.authority); // traces www.google.com 
2

Это должно сделать работу: http(s?)://([\w]+\.){1}([\w]+\.?)+ Вы можете попробовать это в GSkinner RegExr

0

Предыдущее регулярное выражение при условии, что пропустил некоторые типы URL-адресов я нужен, поэтому в интересах Googlers, я использую

(HTTP: // | https: //) (WWW.) [Az] * (.com | .co.uk | .us | .org | .net | .mobi)

в C#

?
var regexMatch = Regex.Match(input, @"(http://|https://)?(www.)?[A-z]*(.com|.co.uk|.us|.org|.net|.mobi)", RegexOptions.Multiline); 

string domain = regexMatch.Value; 

См. Пример на RegExr.

Вы можете удалить "" (...)? " части, чтобы остановить эту часть, появляющуюся в матче, например, чтобы удалить требуемое мне соответствие http.

Наверное, не идеально, но работает для меня. This site - отличная ссылка для создания выражений.

Смежные вопросы