Было бы намного сложнее описать правило в регулярном выражении (которое уже довольно сложно). Между OR и x = x может произойти много вещей, которые все еще будут синтаксически верны.
Кроме того, OR на самом деле не нужно. Рассмотрим, например, sql внедрение, где параметр должен быть чем-то вроде «ORDER BY x», а злоумышленник передает «WHERE x = x». Или есть. Или множество других потенциальных атак.
Намного проще определить тавтологию как x = x, что обычно не происходит в большинстве случаев.