Допустим есть такая регулярка на PHP:
^\+61(?(?=1800)1800\d{6}|\d{9})$
на странице видно, что из 4-х номеров она матчит только первые 2
+611800123456 # match
+61123456789 # match
+61180012345
+6112345678
В python такой синтаксис не поддерживается, указано, что группа должна быть именованная, чтобы на неё сослаться, т.е. как-то так, как я понимаю:
^\+61(?P<test>1800)?(?(test)\d{6}|\d{9})$
но проблема в том, что в этом варианте матчится и третий номер, хотя не должен.
Собственно вопрос, как исправить?