Я пытаюсь объединить два шаблона регулярных выражений, чтобы использовать любой из них на основе текста, но это не работает:
test1 = re.sub(r'(Total_pass[^a-zA-Z]*).*', r'\1', test, flags=re.S).rstrip()
Это работает для /nTotal_pass 3 1 - - - 4 Star Services Limited
. Тогда
test2 = re.sub(r'(Total_pass[^[\*]*).*', r'\1', test, flags=re.S).rstrip()
работает для /nTotal_pass 3 1 - - - 4 *Mount Services Limited
.
Требуется вывод: /nTotal_pass 3 1 - - - 4
Объединение двух кодов:
test3 = re.sub(r'(Total_pass([^a-zA-Z]|[^\\*])*).*', r'\1', test, flags=re.S).rstrip()
или
test3 = re.sub(r'(Total_pass[^\*]*).*|(Total_pass[^a-zA-Z]*).*', r'\1', test, flags=re.S).rstrip()
Что я делаю не так?
Первый код перестает работать, так как встречает символ **
, а второй работает для (**
)