As a non-regex expert, I would solve this by splitting up the criteria into separate tests which can then be easier understood and changed, ie multiple if conditions.
I believe this cannot be done with a single regex, at least not in an understandable fashion :)