cat file |grep -v "xx" | grep -v "yy" |grep -v "zz"
Try:
grep -E -v 'xx|yy|zz' file
Admitting that Don Cragun's proposal is by far better/more efficient, there's no reason your sequence of pipes should not work. If you are not happy with its performance, post input and output and tell us what you dislike.
Here's an awk solution:
awk '!/xx|yy|zz/' file