スポンサーリンク

ハイフンとかマイナスとかダッシュとか

スポンサーリンク
小ネタ
スポンサーリンク

ソースコードを読んでいたら、既存処理にとある文字列変換処理があった。

例 (ソースはイメージです)

const convert = (arg) => {
  return arg.split('ー').join('‐')
}

いざテストをしようと思って、「—」を入力したら期待値が出なかった。

なぜならば、この処理は「ー(全角長音)」を「‐(全角ハイフン)」に変換しているので、「—(全角ダッシュ)」はスルーされるからだ。

スポンサーリンク

ハイフンに似た文字

気になったので色々調べたら、少なくとも以下の文字があることがわかった。

-(全角ハイフンマイナス)
-(半角ハイフンマイナス)
‐(全角ハイフン)
−(全角マイナス)
‒(フィギュアダッシュ)
—(全角ダッシュ(emダッシュ))
–(二分ダッシュ(enダッシュ))
―(ホリゾンタルバー)
ー(全角長音)
ー(半角長音)
─(罫線)
━(罫線) 
ㅡ(ウ(ハングルの字母))
ـ(カシーダ)
⁻(上付きマイナス)
₋(下付きマイナス)
⸺(2emダッシュ)
⸻(3emダッシュ)


※これらの文字のうち
「フィギュアダッシュ」「全角ダッシュ」「二分ダッシュ」「ウ(ハングルの字母)」「カシーダ」「上付きマイナス」「下付きマイナス」「2emダッシュ」「3emダッシュ」
はサロゲートペア

参考

ダッシュ (記号) – wikipedia

ソフトハイフン – wikipedia

ハイフンと似た記号の区別が付きやすくしてほしい · Issue #6 · yuru7/HackGen

小ネタ 雑談
スポンサーリンク
スポンサーリンク
スポンサーリンク
404 Motivation Not Found
タイトルとURLをコピーしました