i just remembered something: whenever !$identifier is used as an operand in a condition, it isn't actually treated as plaintext. it has the effect of logically reversing the value of $identifier in the following way, and in the given order:
here's an example:
//if (!$null = !$(abc)) { } | echo -a $v1 -- $v2
notice the empty string ($null) becomes $true, and the value 'abc' became $null.
thus if ($2 = !$isalnum) doesn't quite check the value of $2 is literally '!$isalnum' but it is still a far cry away from checking that $2 is not alphanumeric.