Что такое :? в модуле re в языке python?
Вопросительный знак в регулярных выражениях означает, что предшествующий ему символ может присутствовать или отсутствовать в строке. В этом случае : может либо встречаться в строке, либо нет. 
Допустим такая регулярка: \d+:?\d+
Найдет обе эти строки:
123:123
123123
:? - такой комбинации нет
А вот знак вопроса - это просто квантификатор {0,1}

следовательно :? - двоеточие может быть или не быть