Fix grammar's matchEnum to allow prefix and suffix

This was broken: abc.def.g{h,i,j}k
as well as path components with two enums between dots