I tried to get rid of those redundant ^ and $ but it somehow didn't work. I probably forgot to put it all inside one group.
They are not redundant. Any string of one or more exes is going to constrain a substring of exes of length 2^n (consider n=0 for a trivial proof), so you do need those anchors!
I meant my previous post where I had them in every single possibility.