如何从这个HTML代码中获取
<a href="www.realy-long-link.com">Link<a>
Href值看起来像这样 - Realy Long Link并将其附加到正文中。
这就是我现在所做的。
$("a").hide();
$("body").append($("a").attr("href"));
目标是:
您可以编辑我的codepen http://codepen.io/anon/pen/YWzJXM?editors=1010
答案 0 :(得分:1)
使用 replace()
方法
var a = document.getElementsByTagName('a');
a[0].style.display = 'none';
document.body.innerHTML += a[0].getAttribute('href')
// remove www. and .com
.replace(/^www\.|\.com$/g, '')
// convert first letter to upper case
.replace(/\b\w/g, function(m) {
return m.toUpperCase()
})
// replace - with space
.replace(/-/g, ' ')
<a href="www.realy-long-link.com">Link<a>
<小时/> 虽然你可以在没有任何正则表达式
的情况下完成
var a = document.getElementsByTagName('a');
a[0].style.display = 'none';
document.body.innerHTML += a[0].getAttribute('href')
// split based on `'`
.split('.')
// remove `www` and `com` from array
.slice(1, -1)
// join again
.join('.')
// split based on `-`
.split('-')
// capitalize first letter
.map(function(v) {
return v.charAt(0).toUpperCase() + v.slice(1);
})
// join by space
.join(' ')
<a href="www.realy-long-link.com">Link<a>
UPDATE:具有相同代码的JQuery解决方案
$('body').append($('a').hide().attr('href').replace(/^www\.|\.com$/g, '').replace(/\b\w/g, function(m) {
return m.toUpperCase();
}).replace(/-/g, ' '));
//or
/*
$('body').append($('a').hide().attr('href').split('.').slice(1, -1).join('.').split('-').map(function(v) {
return v.charAt(0).toUpperCase() + v.slice(1);
}).join(' '));
*/
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="www.realy-long-link.com">Link<a>