В регулярном выражении Python, как мне сопоставить большую строку текста и флаг, если любое из значений регулярного выражения совпадает ... Я пробовал это с "|" или заявления, и я попытался сделать список регулярных выражений .. ни работал для меня .. вот пример того, что я пытаюсь сделать с или ..
Я думаю, что мое "или" закомментировано
patterns=re.compile(r'[\btext String1\b] | [\bText String2\b]')
if(patterns.search(MyTextFile)):
print ("YAY one of your text patterns is in this file")
Приведенный выше код всегда говорит, что он совпадает, независимо от того, появляется ли строка, и если я немного ее изменяю, я получаю совпадения с первым регулярным выражением, но никогда не проверяю второе .... Я считаю, что это потому, что «Raw» комментирует из моего или заявления, но как бы я обойти это ??
Я также пытался обойти это, убрав выражение «Raw» и добавив двойную косую черту к моему \ b для выхода, но это тоже не сработало :(
patterns=re.compile(\\btext String1\\b | \\bText String2\\b)
if(patterns.search(MyTextFile)):
print ("YAY one of your text patterns is in this file")
Затем я попытался сделать 2 отдельных необработанных утверждения с помощью или, и интерпретатор жалуется на неподдерживаемые операнды str ...
patterns=re.compile(r'\btext String1\b' | r'\bText String2\b')
if(patterns.search(MyTextFile)):
print ("YAY one of your text patterns is in this file")