PHPで正規表現…まだまだだけど…

お仕事で、文字入力のチェックをと…
いやぁ確かによくある話なんですけどね、なんというかWeb系のシステムなら、
以前にも書いたように文字コードの問題が…

まぁ全部Shift-JISの環境だとかにしちゃえば大部分には影響は無いのですが…

まぁそんで調べていても拉致があかないので、ごにょごにょと…

そんでもって…'∪'(和集合の記号)とか嫌い(ーー;)
他の漢字もそうだったりするんですけど…

JIS第一水準で
16進のコード値が「81BE」、「879C」などと複数あるし…
なんか連続した文字列だとおもって正規表現で[?-∪]とかで記述するとエラーに…

そんで実際にPHP上での解釈しているコード値を確認すると、
'∪'は「81BE」だとわかったので、[?-?∵∩∪]などとしております。

この文字をチェックと言われとりますが、ちょいと不安だったりも…(-_-;)


ちなみに文字のコード値を確認しているサンプルというか…ガチ書きは
以下をごらんください。

WindowsXPにてXAMMPでかつlocalhostのアパッチ…Shift-JISでのものですので、
環境によっては取得される値が異なるとは思われます。
※bin2hexを使用してますので…

ちなみに、こんなTool便利です♪
漢字コード表

あとWindowsをお使いの場合で、Shift-JISかUnicodeで∪だとか変な記号を入力する時には、
IMEパッドにて、文字一覧を使うと便利ですよ。
わからない人は、全角文字入力にて、Enterキーを押す前にF5キーを押してみましょう♪

$checkChar = array();
$checkChar = "a";
$checkChar
= "А";
$checkChar = "Б";
$checkChar
= "В";
$checkChar = "Г";
$checkChar
= "Д";
$checkChar = "Е";
$checkChar
= "Ё";
$checkChar = "Ж";
$checkChar
= "З";
$checkChar = "И";
$checkChar
= "Й";
$checkChar = "К";
$checkChar
= "Л";
$checkChar = "М";
$checkChar
= "Н";
$checkChar = "О";
$checkChar
= "П";
$checkChar = "Р";
$checkChar
= "С";
$checkChar = "Т";
$checkChar
= "У";
$checkChar = "Ф";
$checkChar
= "Х";
$checkChar = "Ц";
$checkChar
= "Ч";
$checkChar = "Ш";
$checkChar
= "Щ";
$checkChar = "Ъ";
//$checkChar
= "Ы";
$checkChar = "Ь";
$checkChar
= "Э";
$checkChar = "Ю";
$checkChar
= "Я";
$checkChar = "а";
$checkChar
= "б";
$checkChar = "в";
$checkChar
= "г";
$checkChar = "д";
$checkChar
= "е";
$checkChar = "ё";
$checkChar
= "ж";
$checkChar = "з";
$checkChar
= "и";
$checkChar = "й";
$checkChar
= "к";
$checkChar = "л";
$checkChar
= "м";
$checkChar = "н";
$checkChar
= "о";
$checkChar = "п";
$checkChar
= "р";
$checkChar = "с";
$checkChar
= "т";
$checkChar = "у";
$checkChar
= "ф";
$checkChar = "х";
$checkChar
= "ц";
$checkChar = "ч";
$checkChar
= "ш";
$checkChar = "щ";
$checkChar
= "ъ";
$checkChar = "ы";
$checkChar
= "ь";
$checkChar = "э";
$checkChar
= "ю";
$checkChar = "я";
$checkChar
= "─";
$checkChar = "│";
$checkChar
= "┌";
$checkChar = "┐";
$checkChar
= "┘";
$checkChar = "└";
$checkChar
= "├";
$checkChar = "┬";
$checkChar
= "┤";
$checkChar = "┴";
$checkChar
= "┼";
$checkChar = "━";
$checkChar
= "┃";
$checkChar = "┏";
$checkChar
= "┓";
$checkChar = "┛";
$checkChar
= "┗";
$checkChar = "┣";
$checkChar
= "┳";
$checkChar = "┫";
$checkChar
= "┻";
$checkChar = "╋";
$checkChar
= "┠";
$checkChar = "┯";
$checkChar
= "┨";
$checkChar = "┷";
$checkChar
= "┿";
$checkChar = "┝";
$checkChar
= "┰";
$checkChar = "┥";
$checkChar
= "┸";
$checkChar = "╂";
$checkChar
= "、";
$checkChar = "。";
$checkChar
= ",";
$checkChar = ".";
$checkChar
= "・";
$checkChar = ":";
$checkChar
= ";";
$checkChar = "?";
$checkChar
= "!";
$checkChar = "゛";
$checkChar
= "゜";
$checkChar = "´";
$checkChar
= "`";
$checkChar = "¨";
$checkChar
= "^";
$checkChar = " ̄";
$checkChar
= "_";
$checkChar = "ヽ";
$checkChar
= "ヾ";
$checkChar = "ゝ";
$checkChar
= "ゞ";
$checkChar = "〃";
$checkChar
= "仝";
$checkChar = "々";
$checkChar
= "〆";
$checkChar = "〇";
$checkChar
= "ー";
//$checkChar = "―";
$checkChar
= "‐";
$checkChar = "/";
$checkChar
= "\";
$checkChar = "〜";
$checkChar
= "‖";
$checkChar = "|";
$checkChar
= "…";
$checkChar = "‥";
$checkChar
= "‘";
$checkChar = "’";
$checkChar
= "“";
$checkChar = "”";
$checkChar
= "(";
$checkChar = ")";
$checkChar
= "〔";
$checkChar = "〕";
$checkChar
= "[";
$checkChar = "]";
$checkChar
= "{";
$checkChar = "}";
$checkChar
= "〈";
$checkChar = "〉";
$checkChar
= "《";
$checkChar = "》";
$checkChar
= "「";
$checkChar = "」";
$checkChar
= "『";
$checkChar = "』";
$checkChar
= "【";
$checkChar = "】";
$checkChar
= "+";
$checkChar = "−";
$checkChar
= "±";
$checkChar = "×";
$checkChar
= "÷";
$checkChar = "=";
$checkChar
= "≠";
$checkChar = "<";
$checkChar
= ">";
$checkChar = "≦";
$checkChar
= "≧";
$checkChar = "∞";
$checkChar
= "∴";
$checkChar = "♂";
$checkChar
= "♀";
$checkChar = "°";
$checkChar
= "′";
$checkChar = "″";
$checkChar
= "℃";
$checkChar = "¥";
$checkChar
= "$";
$checkChar = "%";
$checkChar
= "#";
$checkChar = "&";
$checkChar
= "*";
$checkChar = "@";
$checkChar
= "§";
$checkChar = "☆";
$checkChar
= "★";
$checkChar = "○";
$checkChar
= "●";
$checkChar = "◎";
$checkChar
= "◇";
$checkChar = "◆";
$checkChar
= "□";
$checkChar = "■";
$checkChar
= "△";
$checkChar = "▲";
$checkChar
= "▽";
$checkChar = "▼";
$checkChar
= "※";
$checkChar = "〒";
$checkChar
= "→";
$checkChar = "←";
$checkChar
= "↑";
$checkChar = "↓";
$checkChar
= "〓";
$checkChar = "∈";
$checkChar
= "∋";
$checkChar = "⊆";
$checkChar
= "⊇";
$checkChar = "⊂";
$checkChar
= "⊃";
$checkChar = "∪";
$checkChar
= "∩";
$checkChar = "∧";
$checkChar
= "∨";
$checkChar = "⇒";
$checkChar
= "⇔";
$checkChar = "∀";
$checkChar
= "∃";
$checkChar = "∠";
$checkChar
= "⊥";
$checkChar = "⌒";
$checkChar
= "∂";
$checkChar = "∇";
$checkChar
= "≡";
$checkChar = "≒";
$checkChar
= "≪";
$checkChar = "≫";
$checkChar
= "√";
$checkChar = "∽";
$checkChar
= "∝";
$checkChar = "∵";
$checkChar
= "∫";
$checkChar = "∬";
$checkChar
= "Å";
$checkChar = "‰";
$checkChar
= "♯";
$checkChar = "♭";
$checkChar
= "♪";
$checkChar = "†";
$checkChar
= "‡";
$checkChar = "¶";
$checkChar
= "◯";

foreach($checkChar as $val){
echo $val." :".bin2hex($val);
echo "
";
}