2010-08-13 3 views
2

Je veux capturer des numéros de téléphone à partir d'un document html. J'ai utilisé un motif mais il sélectionne aussi des nombres qui font partie des attributs des étiquettes.capturer le numéro du texte html

var myArray = $('body').html().match(/([\s()-.])*(0[1-9]|[+][1-9]|[+][+][1-9]|00[1-9])(([\s()-.\/])*[0-9]+)*/g); 
+2

C'est pourquoi il ne comprend pas le code HTML: http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454 – Borealid

+0

+1 pour me faire rire. –

Répondre

1

La méthode html() de jquery utilise la propriété JavaScript innerHTML. La propriété innerHTML récupère la source d'un élément lors de l'exécution. Si vous avez besoin du contenu en texte pur d'un élément (sans balises HTML), utilisez les propriétés innerText et textContent.

Exemple:

var bodyText = (document.body.textContent === undefined) ? document.body.innerText : document.body.textContent; 
var myArray = bodyText().match (/([\s()-.])*(0[1-9]|[+][1-9]|[+][+][1-9]|00[1-9])(([\s()-.\/])*[0-9]+)*/g); 

Pour plus de détails et d'exemples: innerText property, textContent property, innerHTML property.

Questions connexes