I have following string:
<a href="http://stackoverflow.com" target="_blank">StackOverFlow</a>
How can I extract text (ie StackOverFlow) from the string?
No regex required:
var t_ = document.createElement('div'),
a;
t_.innerHTML = htmlString; // <- string containing your HTML
a = t_.children[0];
var text = a.textContent || a.innerText; // W3C vs IE
Actually parsing HTML with regular expressions is evil . Although it might be easy to come up with an expression for your specific case, it might not work well for a different string.
document.getElementById('link_id').innerHTML;
That was my solution before, user added more description but this is solution for current description
var s = '<a href="http://stackoverflow.com" target="_blank">StackOverFlow</a>';
var text = s.match(/<a[^\b>]+>(.+)[\<]\/a>/)[1];
If you can add an id
to your link like so: `StackOverFlow" then you can get the text like this:
document.getElementById('linkID').innerHTML;
window.onload = function(){
var text = '<a href="http://stackoverflow.com" target="_blank">StackOverFlow</a>';
var parser = null;
if (window.DOMParser){
parser = new DOMParser();
xmlDoc = parser.parseFromString(text,"text/xml");
} else{ // Internet Explorer
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.loadXML(text);
}
var a = xmlDoc.childNodes[0];
alert(a.childNodes[0].nodeValue);
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.