Używanie wyrażenia regularnego do przecinania oddziela dużą liczbę w południowo-azjatyckim systemie numerowania
Próbuję znaleźć wyrażenie regularne, aby oddzielić przecinek dużą liczbę na podstawiepołudniowo-azjatycki system numeracji.
Kilka przykładów:
1,000,000
(Arabski) jest10,00,000
(Indian / Hindu / South Asian)1,000,000,000
(Arabski) jest100,00,00,000
(Indian / H / SA).Wzór przecinka powtarza się co 7 cyfr. Na przykład,1,00,00,000,00,00,000
.
Z książki Mastering Regular Expressions autorstwa Friedla mam następujące wyrażenie regularne dla arabskiego systemu numerowania:
r'(?<=\d)(?=(\d{3})+(?!\d))'
W przypadku indyjskiego systemu numerowania wymyśliłem następujące wyrażenie, ale nie działa ono dla liczb z więcej niż 8 cyframi:
r'(?<=\d)(?=(((\d{2}){0,2}\d{3})(?=\b)))'
Korzystam z powyższego wzoru100000000,00,00,000
.
Używam Pythonare
moduł (re.sub()
). Jakieś pomysły?