If you want to detect when a vehicle enters the trigger zone, how about just checking for that with:
("car" countType thislist>0) || ("apc" countType thislist>0)
I don't think what you are describing will ever work, because the trigger array will only return either an individual, or a vehicle, never a person IN a vehicle.
So checking for
"vehicle _x != _x" count thislist > 0
will never work, as _x is always _x in a trigger list, and nothing else.
Your best solution is to test the vehicle class of each unit in the trigger array, and see if there is a "car", "apc", "tank", whatever you have in your mission.