Моя дилемма: я передаю своей функции строку, которая мне нужна для выполнения многочисленных манипуляций с регулярными выражениями. Логика в том, что если в первом регулярном выражении есть совпадение, сделайте одно. Если нет совпадения, проверьте совпадение со вторым и сделайте что-нибудь еще, если нет, проверьте третье и так далее. Я мог бы сделать что-то вроде этого:
if re.match('regex1', string):
match = re.match('regex1', string)
# Manipulate match.group(n) and return
elif re.match('regex2', string):
match = re.match('regex2', string)
# Do second manipulation
[etc.]
Однако это кажется излишне многословным, и обычно, когда это так, это означает, что есть лучший способ, которым я либо пропускаю, либо еще не знаю.
У кого-нибудь есть предложения для лучшего способа сделать это (лучше с точки зрения внешнего вида кода, с точки зрения использования памяти или с обоими)?