in reply to Testing a command line argument

Fixing your operator as others have suggested will give you valid perl code. It still may not do exactly what you want. First note that ARGV[1] refers to the second argument, not the first. A regular expression treats the argument as a string. Your regex will match any string that begins with the digit "0" or the characters "ALL" (case insensitive). I am not sure that this agrees with your idea of numeric '0'. (it will match the strings such as "0h, my" or "007") You probably do not intend it to match a mixed case string such as "aLl oR NoTHinG", but it will. It is often difficult to specify all the special cases correctly. It is impossible to get the regular expression right before you do.
Bill