msisdn.py
485 Bytes
import re
REGEX_ONLY_CONTAIN = re.compile('([0-9\+\- ]*)')
def get_msisdn(msisdn, country='+62'):
match = REGEX_ONLY_CONTAIN.search(msisdn)
if not match or match.group(1) != msisdn:
return
clean = msisdn.replace(' ', '').replace('-', '')
length = len(clean)
if length < 7 or length > 16:
return
try:
int(clean)
except ValueError:
return
if clean[0] == '+':
return clean
return country + clean.lstrip('0')