python - How is the order of a re.search determined? -


assuming have pattern resembling:

re.compile(r"(pattern1)|(pattern2)|...|(patternn)") 

where patterns intentionally ordered method. expected search order left right returning first match, results have proven otherwise.

how order of pattern search determined?

edit: may issue regex since quite lengthy want make sure assumption search method correct.

the search order left right on searched string; left right on pattern same initial position in searched string. thus, if looking r"b|c" in "dcba", "c" found first, since closest start of "dcba" "b".

but, if looking r"..a|.b", "cba" found rather "cb" start @ same position, ..a alternative sooner in pattern.


Comments

Popular posts from this blog

javascript - Google App Script ContentService downloadAsFile not working -

javascript - Function overwritting -

c# - Exception when attempting to modify Dictionary -