Мне нужны дополнительные буквы, не заключенные в кавычки, а не если они соответствуют слову TODAY
с конкретной строкой, часть которой включает группу совпадений, например
import re
import string
s = 'AB+B+" HELLO"+TODAY()/C* 100'
x = re.sub(r'\"[^"]*\"|\bTODAY\b|([A-Z]+)', r'a2num("\g<0>")', s)
print (x)
ожидаемый результат:
'a2num("AB")+a2num("B")+" HELLO"+TODAY()/a2num("C")* 100'
фактический результат:
'a2num("AB")+a2num("B")+a2num("" HELLO"")+a2num("TODAY")()/a2num("C")* 100'
Я почти готов, но он не подчиняется правилам цитат или правилу TODAY
слов, я знаю, что строка не имеет никакого смысла, но это просто хард sh тест регулярного выражения