Am I doing something wrong, or is the following behavior expected when searching a compiled regex in Python with the IGNORECASE flag? The strange behavior is that it appears I must define IGNORECASE
when compiling a regex, but I cannot use the IGNORECASE flag when searching a compiled regex.
import re
regex_string = "test"
assert re.search(regex_string, "test")
assert re.search(regex_string, "TEST", re.IGNORECASE)
regex = re.compile(regex_string, re.IGNORECASE)
assert regex.search("test")
assert regex.search("TEST")
#assert regex.search("TEST", re.IGNORECASE) # appears logical but fails
regex2 = re.compile(regex_string)
assert regex2.search("test")
#assert regex2.search("TEST", re.IGNORECASE) # appears logical but fails