「ハイフン」って言ってもたくさん種類があるんだよ

2020年5月12日

テクノロジー プログラミング

t f B! P L
「*」アスタリスクと聞くと、オールマイティ感を感じる、正規表現的な脳みそになっている、ユゲタです。

本日のIT謎掛け

「ハイフン」と、かけまして、 「心拍数の安静値」と、ときます。 そのココロは・・・ ダッシュするとマイナスになっちゃうよ。

ハイフンの種類の多さにビックリ

パソコンで「-」(マイナス)キーを全角モードで押すと、変換候補がたくさんリスト表示される時に、なんだかたくさんの「-」が存在する事に気がついた人もいると思います。 入りきっていないものも合わせて書き出すと、以下のような感じ。 1. ー : 長音 2. ➖ : 絵文字 (ハイフンじゃない) 3. 〰 : [全]絵文字 (ハイフンじゃない) 4. - : [半]ハイフン マイナス 5. − : [全]ハイフン マイナス 6. 〜 : [全]波ダッシュ (ハイフンじゃない) 7. ~ : [半]波ダッシュ (ハイフンじゃない) 8. ― : [全]ダッシュ 9. ‐ : [全]ハイフン 10. ー : [全] 11. - : [半] 12. − : [全] 13. ー : [半]カタカナ macで表示しているので、見ているOSによっては、文字化けをしているものもあると思います。 中にはハイフンじゃないものもありますが、どうやら、ハイフン、ダッシュ、マイナス・・・と、名称がいくつかあることに気がつく。 もちろん文字コードも違うようだ。(コードはasciiコードと16進数) [ ー : 12540 , 0x30FC] 長音 [ - : 45 , 0x2D] [半]ハイフン マイナス [ − : 8722 , 0x2212] [全]ハイフン マイナス [ ― : 8213 , 0x2015] [全]ダッシュ [ ‐ : 8208 , 0x2010] [全]ハイフン [ ー : 12540 , 0x30FC] [全] [ - : 45 , 0x2D] [半] [ − : 8722 , 0x2212] [全] [ ー : 65392 , 0xFF70] [半]カタカナ 下方にある、[半]と[全]は、それぞれ「ハイフン、マイナス」と同じことがわかるが、それ以外はバラバラだ。 半角カタカナと半角ハイフンの違いは、mac端末で見る限り、人の目で判断できるレベルではない。

システムエンジニアが遭遇するかもしれないハイフン・トラブル

おそらく、文章などで文字入力をする場合など、半角か全角かぐらいを気にすればいいかと思いますが、 システムに登録する文字列には、気を使わなくてはいけません。 例えば、ECサイトなどで、ユーザーの郵便番号や電話番号を登録させる時に、000-0000や03-0000-0000という風に書いた時にハイフンは、 通常のエンジニアであれば、半角ハイフンであると信じて疑わないでしょうが、利用するユーザーがハイフンをどの文字コードのモノに変換してくるかは、正直不明です。 実際に、スマホサイトなどでやってみると、半角全角だけでなく、アンダースコア「_」などを入力するツワモノもいて、市外局番などに分解しようとする作業をかんがえると、なんとも、エンジニア泣かせの仕様です。

まあまあ使える正規表現サンプル

郵便番号 /([0-90-9]{3}).*?([0-90-9]{4})/ 電話番号 /([0-90-9]{2,4}).*?([0-90-9]{2,4}).*?([0-90-9]{2,4})/ javascriptのコードを使った正規表現サンプル "0ー1-2−3―4‐5ー6ー7".match(/(\u30FC).*?(\x2D).*?(\u2212).*?(\u2015).*?(\u2010).*?(\u30FC).*?(\uFF70)/) ``` 0: "ー1-2−3―4‐5ー6ー" 1: "ー" 2: "-" 3: "−" 4: "―" 5: "‐" 6: "ー" 7: "ー" ``` 無事に全部ひっかかりました。 半角文字は"x"で、全角文字は"u"を頭につけている点に注意してね。

このブログを検索

プロフィール

自分の写真
町田市, 東京都, Japan
プログラミングとサーバーを心の底から楽しむクリエーターです。 経営者であり、開発者でもありますが、得意としているのは、アイデア創出です。

ブログ アーカイブ

QooQ