My dilemma: I’m passing my function a string that I need to then perform numerous regex manipulations on. The logic is if there’s a match in the first regex, do one thing. If no match, check for a match with the second and do something else, if not check the third, and so forth. I could do something like this:
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.]
However, this feels unnecessarily verbose, and usually when that’s the case it means there’s a better way that I’m either overlooking or don’t yet know about.
Does anyone have a suggestion for a better way to do this (better from a code-appearance standpoint, a memory usage standpoint, or both)?
Similar question from back in september: How do you translate this regular-expression idiom from Perl into Python?
Using global variables in a module maybe not the best way to do it, but converting it into a class: