Ваш шаблон соответствует тому, что вы хотите отбросить, и вы используете его для извлечения (то, что вам не нужно).Итак, все, что вам нужно, это использовать re.sub
:
import re
pattern = re.compile(r'\baaa_')
my_list = [['aaa_house', 'aaa_car', 'aaa_table'], ['aaa_love', 'aaa_hate', 'aaa_life']]
print([[pattern.sub('', i) for i in y] for y in my_list])
Вывод:
[['house', 'car', 'table'], ['love', 'hate', 'life']]
См. Демонстрацию Python и демонстрацию regex .
ПРИМЕЧАНИЕ Если вы хотите сопоставить aaa
в начале строки , замените \b
на ^
.См. эту демонстрацию регулярных выражений .
Обратите внимание, что вам не нужно помещать _
внутри класса символов, _
не является специальным метасимволом регулярных выражений, и нет смысла помещать одинслово char в класс символов (эта конструкция должна быть заполнена несколькими символами или диапазонами символов).