Я знаю p=re.compile('aaa|bbb')
может работать, но я хочу переписать p = re.compile('aaa|bbb')
с помощью переменных, что-то вродерегулярное выражение питона о или
A = 'aaa'
B = 'bbb'
p = re.compile(A|B)
, но это не работает. Как я могу переписать это, чтобы использовать переменные (и это работает)?
Python уже предоставляет функцию для их удаления, а именно ['re.escape'] (https://docs.python.org/3/library/re.html#re.escape). Поэтому, чтобы сделать чередование произвольного набора литералов, вы просто выполните: 'r '|' .join (map (re.escape, literals_to_alternate_on))'. – ShadowRanger