$drunk|?{$_ -match 'f','b'}
will fail to find a match... that comma is read literaly not as an or as you intended it.
$drunk | ? { $_ -match "b" -or $_ -match "b"}
will return as intended but that’s a lot of typing. Instead, remember -match is a regex as such can process anything you could normally do in an (if|switch) statement. With that in mind try,
$funk = "^[b,f]"
$drunk|?{$_ -match $funk}
^ dictates first character
[] says match any char contained within []
, dictates or So...
"^[b,f]" really means, where first character is equal to "b" or "f".
help about_Regular_Expression is a great place to reference when you’re getting erroneous results.
~Glenn