Bonjour à tous,
Je cherche un expression régulière qui me permet de récupérer des numéro de téléphone dans une page. Je récupère donc les numéro qui commence par un + suivi par un chiffre de 1 à 9, et suivi par une série de chiffre entre 0 et 9 incluant des espaces et des -.Leproblème est que je récupère également des codes couleur si du CSS est inclut dans une balise et quand je remplace mon le résultat de mon expression je remplace mes codes couleur ...
solution : ne pas inclure les chiffres commençant par #
var reg=new RegExp("[^#](\\+|00)([1-9]{1})(([1-9]|\\-|\\ )*)", "g");
Problème: je récupère maintenant les numéros qui commence par +00 or je souhaite récupérer les numéros commençant par + OU 00 .
Merci d'avance,
jérèm ...
ps: pour ceux qui voudrait tester sans réécrire le test :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| <html>
<head>
<script type="text/javascript">
function getElements()
{
var x=document.getElementsByTagName("body");
var chaine=x.item(0).innerHTML;
var reg=new RegExp("[^#](\\+|00)([1-9]{1})(([1-9]|\\-|\\ )*)", "g");
//var reg=new RegExp("([^#00])(\\+|00)([1-9]{1})([0-9]|\\-|\\ )*", "g");
var res=chaine.match( reg );
for(var i=0; i<res.length;i++) {
alert(res[i]);
chaine=chaine.replace(res[i], "<a style=\"color:red\" id=\"TOTOTO\" href=#"+res[i]+">"+res[i]+"</a>");
}
document.write(chaine);
}
</script>
</head>
<body onload="getElements()">
<div>dfgsd +5565667--7-7fdsdg</div>
<div>sdfsdfsdf #00545646546 </div>
<div>sdfsdfsdf #+545646546 </div>
<div>sdfsdfsdf +00545646546 </div>
<div>sdfsdfsdf 00545646546 </div>
<div> +123454332 eert7</div>
</body>
</html> |
Partager