jQuery 从字符串中提取域(.com、.it、.fr)的结尾部分
jQuery extract finishing part of the domain (.com, .it, .fr) from a string
我有这样一个域的问题:
https://example.com/Controller/Index
或:
https://example.it/Controller/Index
或:
https://example.de/Controller/Index
我想使用 jQuery 提取域的 .com .de 和 .it 部分。我环顾四周,没有找到任何关于如何做到这一点的例子。
有人可以帮我吗?
如果您只是想解析页面本身的 URL,您可以简单地检查 window.location.hostname
。您只需将它按 .
字符拆分并获得最后一项:
var hostnameParts = window.location.hostname.split('.');
var topLevelDomain = hostnameParts[hostnameParts.length - 1];
var hostnameParts = window.location.hostname.split('.');
var topLevelDomain = hostnameParts[hostnameParts.length - 1];
console.log('This iframe\'s hostname: ' + window.location.hostname);
console.log('The top level domain: ' + topLevelDomain);
但是,如果要在 URL 出现在字符串中时对其进行解析,则需要依赖正则表达式:
var url = 'https://example.com/Controller/Index';
var pattern = /^https?:\/\/.*\.(.*?)\/.*$/gi;
var urlParsed = pattern.exec(url);
var topLevelDomain = urlParsed ? urlParsed[1] : null;
概念验证示例:
document.getElementById('parseUrl').addEventListener('click', function() {
var url = document.getElementById('url').value;
var pattern = /^https?:\/\/.*\.(.*?)\/.*$/gi;
var urlParsed = pattern.exec(url);
console.log('Parsing URL string: ' + url);
if (urlParsed) {
console.log('- Top level domain: ' + urlParsed[1]);
} else {
console.log('- Unable to parse URL');
}
});
#url {
display: block;
width: 100%;
}
<input type="text" value="https://example.com/Controller/Index" id="url" />
<button type="button" id="parseUrl">Get top level domain</button>
我有这样一个域的问题:
https://example.com/Controller/Index
或:
https://example.it/Controller/Index
或:
https://example.de/Controller/Index
我想使用 jQuery 提取域的 .com .de 和 .it 部分。我环顾四周,没有找到任何关于如何做到这一点的例子。
有人可以帮我吗?
如果您只是想解析页面本身的 URL,您可以简单地检查 window.location.hostname
。您只需将它按 .
字符拆分并获得最后一项:
var hostnameParts = window.location.hostname.split('.');
var topLevelDomain = hostnameParts[hostnameParts.length - 1];
var hostnameParts = window.location.hostname.split('.');
var topLevelDomain = hostnameParts[hostnameParts.length - 1];
console.log('This iframe\'s hostname: ' + window.location.hostname);
console.log('The top level domain: ' + topLevelDomain);
但是,如果要在 URL 出现在字符串中时对其进行解析,则需要依赖正则表达式:
var url = 'https://example.com/Controller/Index';
var pattern = /^https?:\/\/.*\.(.*?)\/.*$/gi;
var urlParsed = pattern.exec(url);
var topLevelDomain = urlParsed ? urlParsed[1] : null;
概念验证示例:
document.getElementById('parseUrl').addEventListener('click', function() {
var url = document.getElementById('url').value;
var pattern = /^https?:\/\/.*\.(.*?)\/.*$/gi;
var urlParsed = pattern.exec(url);
console.log('Parsing URL string: ' + url);
if (urlParsed) {
console.log('- Top level domain: ' + urlParsed[1]);
} else {
console.log('- Unable to parse URL');
}
});
#url {
display: block;
width: 100%;
}
<input type="text" value="https://example.com/Controller/Index" id="url" />
<button type="button" id="parseUrl">Get top level domain</button>