I expected this code below to evaluate to True (it does evaluate to False):
StringMatchQ["«TITLE:Load(1,2)»",
(StartOfString ~~ "«" ~~ prop__ ~~ ":Load»" ~~ EndOfString) |
(StartOfString ~~ "«" ~~ prop__ ~~ ":Load(" ~~ params___ ~~ ")»" ~~
EndOfString)]
Especially since this simpler one does indeed evaluate to True:
StringMatchQ["«TITLE:Load(1,2)»",
("JUST A RANDOM STRING WHICH IS NOT MATCHED ANYWAY")|
(StartOfString ~~ "«" ~~ prop__ ~~ ":Load(" ~~ params___ ~~ ")»" ~~
EndOfString)]
Have I just found a bug or am I missing some subtlety?