Salut le Forum,
Je cherche un petit coup de main pour extraire un numéro de telephone d'une chaine de caractère
J'ai trouvé des choses dans mes recherches mais étant une vraie bille en regex, je suis perdue ....
Voici le code
Si vous avez une idée
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 import re Source = """<p><strong>Kuala Lumpur</strong><strong>:</strong> 06 12 16 2712 </p>""" def extract_mobile_number(text): phone = re.findall(re.compile(r'(?:(?:\+?([1-9]|[0-9][0-9]|[0-9][0-9][0-9])\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([0-9][1-9]|[0-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:#|x\.?|ext\.?|extension)\s*(\d+))?'), text) print(phone) if phone: number = ''.join(phone[0]) if len(number) > 10: return '+' + number else: return number print(extract_mobile_number(Source))
Merci d'avance
Thais
Partager