2016-08-07 29 views
0

Ich brauche Regex, die alle Tags aus HTML entfernen und die URL als Text anzeigen.node.js regEx, die ein Tags entfernen

zum Beispiel dieser Text:

abc <a href="http://a.com" target="_blank">bbb</a> ccccccc 

wird geworden:

abc bbb http://a.com ccccccc 
+0

Warum brauchen Sie "* * *" einen regulären Ausdruck, um dies zu tun (unvollständig, mit Edge-Fällen), wenn das DOM Ihnen weit mehr Zuverlässigkeit bietet? Und warum kommt 'href' (' "http://a.com" ') zwischen' bbb' und 'cccccc'? –

+0

Ich arbeite an node.js, also habe ich nicht dom. Ich brauche, um das ganze Datum von HTML zu no-html Bereich zu zeigen. –

Antwort

0
text = html.replace(/href="([^"]*)"[^>]*>([^<]*)</g, '>$2 $1<').replace(/<[^>]*>/g, ''); 

Die erste replace fügt die URL nach dem Linktext. Die zweite replace entfernt alle HTML-Tags.

1

Sie getElementsByTagName für "a" und getAttribute für "href" verwenden könnte oder hat es bekam ein RegEx zu sein?

+0

es hat in RegEx, ich schreibe in node.js so habe ich nicht dom. –

+0

vielleicht ist dieser Beitrag [link] (http://stackoverflow.com/questions/34268804/access-to-dom-using-node-js) hilfreich. – csabinho

+0

Ich kann auch https://www.npmjs.com/package/jQuery verwenden, aber ich bevorzuge RegEx oder String-Manipulation –