Как использовать переменную в качестве параметра длины символа внутри регулярного выражения [дубликат]Python

Программы на Python
Anonymous
Как использовать переменную в качестве параметра длины символа внутри регулярного выражения [дубликат]

Сообщение Anonymous »


У меня есть шаблон регулярного выражения для поиска слов длиннее определенного количества символов:

pattern = r"\w{14,}" где я хочу, чтобы 14 был динамическим. Как я могу вставить переменную в качестве параметра длины символа в регулярное выражение?

Я пытался, но безуспешно:

длина = 14 шаблон = re.compile(r"\w{" + str(длина) + ",}") Затем шаблон используется в качестве запроса в модели Django следующим образом:

module_list = Contentmodule.objects.filter( # Q(json__text__iregex = r"\w{14,}") Q(json__text__iregex = шаблон) ) и я получаю сообщение об ошибке: sqlite3.InterfaceError: ошибка параметра привязки 1 – вероятно, неподдерживаемый тип.

Изменить:

Моя ошибка, проблема заключалась в том, что функция Q() ожидает строку, а не шаблон предварительной сборки, это работает:
длина = 14 модуль_список = Contentmodule.objects.filter( Q(json__text__iregex = r"\w{" + str(длина) + ",}") )

Вернуться в «Python»