#! perl -sw use strict; my @stack; while( ) { print; s[NOT\s+][-]g; 1 while s[(?## D:\Perl\test>268325 word1 AND word2 +word1 +word2 word1 OR word2 word1 word2 word1 AND NOT word2 +word1 -word2 (word1 AND NOT word2) OR word3 (+word1 -word2) word3 word1 AND word2 AND word3 +word1 +word2 +word3 (word1 AND word2 OR word3) AND NOT (word4 OR word5) (+word1 +word2 word3) -(word4 word5) (word1 OR (word2 OR (word3 AND word4 AND NOT word5)) AND word6) OR word7 (word1 (word2 (+word3 +word4 -word5)) +word6) word7