python3 - неожиданное поведение re.findall
От: ioctl  
Дата: 26.11.20 08:58
Оценка:
# если использовать при токенизации \d+ - все ОК
re.findall(r'[()+\-*/]|\d+', '12*(15+5*2)/3+(6/2+8)')
['12', '*', '(', '15', '+', '5', '*', '2', ')', '/', '3', '+', '(', '6', '/', '2', '+', '8', ')']
# если использовать при токенизации (\d+) - пропадают операции
re.findall(r'[()+\-*/]|(\d+)', '12*(5+5*2)/3+(6/2+8)')
['12', '', '', '5', '', '5', '', '2', '', '', '3', '', '', '6', '', '2', '', '8', '']
Отредактировано 26.11.2020 9:54 ioctl . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.