in reply to Re^3: Pattern matching when there are exception strings
in thread Pattern matching when there are exception strings

But what I haven't quite figured out is *why* ^_#ALPHA wouldn't match on 'ALPHA, I AM'. Is it because the character class has to match _some_ character?
Yes -- it has to match exactly one character ... you can, however, use the quantifiers:
/[A]B/; # must be 'AB' /[A]?B/; # 0 or 1, so 'AB' or 'B' or 'CB' /[A]+B/; # 1 or more, so 'AB', or 'AAAB' /[A]*B/; # 0 or more, so AB' or 'AAAB' or 'B' or 'CB'
My train of thought was that the negation would be primary. "Is there an underscore or a hash leading?" "No."
"Is there a character that is (NOT) an underscore or a hash"
The "NOT" being there iff there's the leading carat.