My guess is that grep uses numerical comparison if called with an EXPR (and not a BLOCK), so "a" == "b".
In reply to Re: Weird grep behaviour by moritz in thread Weird grep behaviour by chrism01