正規表現その3

$1 =~ /[^_0-9a-zA-Z\-\.]/

はて。なんですかね?これは。

/パターン/
これはOK。

[^_0-9a-zA-Z\-\.]
なんだこれ。。。

文字クラス
マッチングの対象となる文字列中に、[   ] (ブラケット)で囲んだ文字の
いずれかをマッチさせるため表現です。

ー(マイナス)は、範囲指定。^(キャレット)は、逆の意味で、
「「含まれていない」文字にマッチする」になる。

代表的な文字クラス

[a-zA-Z0-9]  英数字1文字にマッチ
[^a-zA-Z]  英字以外にマッチ

ということで、「[^_0-9a-zA-Z\-\.]」これは、
「_(アンダースコア)と、英数字、ハイフン、ドットを含まないものにマッチ」
ということでいいのかな。。。