{Matches,DoesNotMatch} support the ESCAPE clause

Fresh take on #166; closes #166