Что такое развертка в Rust и для чего она используется?

К сожалению, re.escape() не подходит для заменяющей строки:

>>> re.sub('a', re.escape('_'), 'aa')
'\\_\\_'

Решение состоит в том, чтобы поместить замену в лямбда:

>>> re.sub('a', lambda _: '_', 'aa')
'__'

, потому что возвращаемое значение лямбда обрабатывается re.sub() как литеральная строка.

24
задан Shepmaster 1 April 2016 в 17:23
поделиться