Question on passing multiple parameters in if

Hi All,
My target is to find the list of orphan processes running and i issue the below command with some exception ids.

 
ps -ef | egrep -v "root|system|admin" | awk '{if ($3 == 1) print $1",\t"$2",\t"$3}'

but this will exclude the process having the word 'root' and executing under different user id (not root).
To achieve this, i planned to do a positional egrep to get rid off the above scenario and below is the code:

 
ps -ef | egrep -v "^.{4}root|^..system|^...admin" | awk '{if ($3 == 1) print $1",\t"$2",\t"$3}'

this works but if there are more user id's need to be added in the exception list then the line grows bigger, to shorten this to a bit i tried the below one:

 
ps -ef | awk '{if ($3 == 1 && $1 != "root||system||admin") print $1",\t"$2",\t"$3}'

but not getting any output and i know the issue is due to passing multiple strings in a single condition... please correct me.
Is there any alternative/simple solution exists? Thanks for your help in advance!

Try:

ps -ef | awk '{if ($3 == 1 && $1 !~ /root|system|admin/) print $1",\t"$2",\t"$3}'

Jean-Pierre.