У меня есть требование вернуть совпадение, если найден следующий подтекст, но никаких других буквенных символов c не должно быть до или после подтекста.
Например: поиск текста "OCI" в имени файла:
import re
file_pattern = r".*([^a-zA-Z0-9]OCI[^a-zA-Z0-9]).*"
text = "rce oci "
m = re.match(file_pattern, text, re.IGNORECASE)
if m is not None:
print(m)
else:
print("no match found")
Приведенный выше код работает как предназначенный текст = "rce oci" -> совпадение найдено - обратите внимание, что есть дополнительный пробел после oci здесь text = "rceoci" -> совпадение не найдено
Но если text = "rce oci", оно не возвращает совпадение - заметьте, что здесь нет лишних пробелов.
Как я могу это исправить?
Спасибо