import re
phones = ['00-44 48 5555 8361', '34535 43 - 23', '023423 1 2-00',
'345345345345', '(345)-345765 345 75', '8(913)345-341 2 3']
def phones_parse(phone):
regex = r'[ -]|[\)\(]*'
phone = [re.sub(regex,'',x) for x in phone]
newphones = []
for i in phone:
if len(i) % 3 == 2:
k = len(i) - 2
n, list = 0, []
while True and n !=k:
list.append(i[n:n+3])
n +=3
list.append(i[-2:])
string = ('-').join(list)
newphones.append(string)
elif len(i) % 3 == 1:
k = len(i) - 4
n, list = 0, []
while True and n != k:
list.append(i[n:n + 3])
n += 3
list.append(i[-4:-2])
list.append(i[-2:])
string = ('-').join(list)
newphones.append(string)
else:
k = len(i)
n, list = 0, []
while True and n != k:
list.append(i[n:n + 3])
n += 3
string = ('-').join(list)
newphones.append(string)
return newphones
b = phones_parse(phones)
print(b)
aW1wb3J0IHJlCnBob25lcyA9IFsnMDAtNDQgICAgNDggNTU1NSA4MzYxJywgJzM0NTM1IDQzIC0gMjMnLCAnMDIzNDIzIDEgMi0wMCcsCiAgICAgICAgICAnMzQ1MzQ1MzQ1MzQ1JywgJygzNDUpLTM0NTc2NSAzNDUgNzUnLCAnOCg5MTMpMzQ1LTM0MSAgMiAzJ10KZGVmIHBob25lc19wYXJzZShwaG9uZSk6CiAgICByZWdleCA9IHInWyAtXXxbXClcKF0qJwogICAgcGhvbmUgPSBbcmUuc3ViKHJlZ2V4LCcnLHgpIGZvciB4IGluIHBob25lXQogICAgbmV3cGhvbmVzID0gW10KICAgIGZvciBpIGluIHBob25lOgogICAgICAgIGlmIGxlbihpKSAlIDMgPT0gMjoKICAgICAgICAgICAgayA9IGxlbihpKSAtIDIKICAgICAgICAgICAgbiwgbGlzdCA9IDAsIFtdCiAgICAgICAgICAgIHdoaWxlIFRydWUgYW5kIG4gIT1rOgogICAgICAgICAgICAgICAgbGlzdC5hcHBlbmQoaVtuOm4rM10pCiAgICAgICAgICAgICAgICBuICs9MwogICAgICAgICAgICBsaXN0LmFwcGVuZChpWy0yOl0pCiAgICAgICAgICAgIHN0cmluZyA9ICgnLScpLmpvaW4obGlzdCkKICAgICAgICAgICAgbmV3cGhvbmVzLmFwcGVuZChzdHJpbmcpCiAgICAgICAgZWxpZiBsZW4oaSkgJSAzID09IDE6CiAgICAgICAgICAgIGsgPSBsZW4oaSkgLSA0CiAgICAgICAgICAgIG4sIGxpc3QgPSAwLCBbXQogICAgICAgICAgICB3aGlsZSBUcnVlIGFuZCBuICE9IGs6CiAgICAgICAgICAgICAgICBsaXN0LmFwcGVuZChpW246biArIDNdKQogICAgICAgICAgICAgICAgbiArPSAzCiAgICAgICAgICAgIGxpc3QuYXBwZW5kKGlbLTQ6LTJdKQogICAgICAgICAgICBsaXN0LmFwcGVuZChpWy0yOl0pCiAgICAgICAgICAgIHN0cmluZyA9ICgnLScpLmpvaW4obGlzdCkKICAgICAgICAgICAgbmV3cGhvbmVzLmFwcGVuZChzdHJpbmcpCiAgICAgICAgZWxzZToKICAgICAgICAgICAgayA9IGxlbihpKQogICAgICAgICAgICBuLCBsaXN0ID0gMCwgW10KICAgICAgICAgICAgd2hpbGUgVHJ1ZSBhbmQgbiAhPSBrOgogICAgICAgICAgICAgICAgbGlzdC5hcHBlbmQoaVtuOm4gKyAzXSkKICAgICAgICAgICAgICAgIG4gKz0gMwogICAgICAgICAgICBzdHJpbmcgPSAoJy0nKS5qb2luKGxpc3QpCiAgICAgICAgICAgIG5ld3Bob25lcy5hcHBlbmQoc3RyaW5nKQogICAgcmV0dXJuIG5ld3Bob25lcwoKYiA9IHBob25lc19wYXJzZShwaG9uZXMpCnByaW50KGIpCg==