Скажи, что я хочу написать режиму для сопоставления текста, подобного «Таблице 1.1-1 ABCD» / «Рисунок 1: EFG» / «Изображение 1.1 Hijk LMN», но отказ «Таблица 1.1: ABCD EFG», что означает первую букву «Таблица» / «Фигура» ... должен быть заявленным, но «таблица» и «таблица», «фигура» и «фигура», «Изображение». /> Мои коллеги написали резервуар с флагом re.ignorecase < /code>, поэтому я не хочу менять слишком сильно. Это как < /p>
Код: Выделить всё
pattern = re.compile(r"^(?!.*[._…-]{{3,}}\s*\d+$)([1-9]\d?)?\s?({})\s+({}):?\s?.*".format('|'.join(SECTION_KWT), SN_KW_SECTION),
re.DOTALL | re.IGNORECASE)
< /code>
SECTION_KWT
-это список, содержащий такие слова, как «таблица», «фигура» и другие, sn_kw_section -это Str, представляющий что-то вроде «1.1-1», «1» и т. Д.
Я просто не хочу изменить резюме, чтобы указать эту букву Overdance, но даже я попросил AI, я все еще не могу получить хорошее решение. Я попробовал [a-z] , (? -I) , но никто не работает.
Подробнее здесь:
https://stackoverflow.com/questions/797 ... in-a-regex