Usando expressão regular para vírgula separar um grande número no sistema de numeração do sul da Ásia

Eu estou tentando encontrar uma expressão regular para vírgula separar um grande número com base nosistema de numeração do sul asiático.

Alguns exemplos:

1,000,000 (Árabe) é10,00,000 (Indiano / Hindu / Sul da Ásia)1,000,000,000 (Árabe) é100,00,00,000 (Indian / H / SA).

O padrão de vírgula se repete para cada 7 dígitos. Por exemplo,1,00,00,000,00,00,000.

Do livro Mastering Regular Expressions, de Friedl, tenho a seguinte expressão regular para o sistema de numeração árabe:

r'(?<=\d)(?=(\d{3})+(?!\d))'

Para o sistema de numeração indiano, criei a seguinte expressão, mas não funciona para números com mais de 8 dígitos:

r'(?<=\d)(?=(((\d{2}){0,2}\d{3})(?=\b)))'

Usando o padrão acima, recebo100000000,00,00,000.

Eu estou usando o Pythonre módulo (re.sub()). Alguma ideia?

questionAnswers(2)

yourAnswerToTheQuestion