Я хочу, чтобы получить имя домена без WWWRegex найти доменное имя без WWW
например: https://www.gmail.com/anything Вывод должен быть gmail.com (или .net или .org)
Может кто-нибудь помочь мне в давая регулярное выражение для этого?
Я хочу, чтобы получить имя домена без WWWRegex найти доменное имя без WWW
например: https://www.gmail.com/anything Вывод должен быть gmail.com (или .net или .org)
Может кто-нибудь помочь мне в давая регулярное выражение для этого?
Использование регулярных выражений, таких как /(?:https?:\/\/)?(?:www\.)?(.*?)\//
:
var str = "https://www.gmail.com/anything";
var match = str.match(/(?:https?:\/\/)?(?:www\.)?(.*?)\//);
console.log(match[match.length-1]); //gmail.com (last group of the match)
Примечание: Это позволит получить все после того, как протокол HTTP/HTTPS, не включая WWW - до первой косой черты.
Дополнительное примечание: Много доменов используют поддоменов - значит mail.google.com
внезапно стал google.com
и, следовательно, не работают. Шахта включает в себя все поддомены от от www
.
спасибо и его работа, и проблема в том, что я могу или не могу получить https ex: я могу получите также www.gmail.com. Итак, как я могу изменить это на работу? –
@kittuss Использование вопросительных знаков. 'https?: \/\ /' означает «строка' http', за которой следует необязательный 's', за которым следует': // '. Следовательно, '(https?: \/\ /)?' Означает предыдущий, но знак вопроса означает «повторяется 1 или 0 раз» (так что это необязательно). Проверьте мой обновленный ответ на рабочий код. Когда скобка начинается с '?:', Это не захватывающая группа, что означает «не помещайте это соответствие в наши результаты совпадения». – h2ooooooo
Спасибо, много .. Это работает как шарм !! –
Вы можете использовать <a>
, чтобы получить информацию о URL-адресе. Например:
var a = document.createElement("a");
a.href = "http://www.google.com";
Вы можете получить домен:
var domain = a.hostname;
И вы можете стирают любые ведущие "WWW.":
domain = domain.replace(/^www\./, "");
В многоразовой функции, вы могли бы использование:
function getDomain(url) {
var a, domain;
a = document.createElement("a");
a.href = url;
domain = a.hostname;
domain = domain.replace(/^www\./, "");
return domain;
}
DEMO:http://jsfiddle.net/DuK6D/
More info/attributes about the HTMLAnchorElement JS object on MDN
Любил это. Очень простой, эффективный и надежный – mvinayakam
Вы пробовали что-нибудь еще? – j08691
Что вы попробовали? SO не является генератором кода. –
Я попытался, и мое регулярное выражение (? <= \. |) \ W + \. \ W + $ работает в рубине не в coffescript –