CEOブログ

横浜で活躍するホームページ作成・開発会社アットライズの代表取締役社長(CEO)が綴る、日々の奮闘記!!

備忘録

[備忘録]「ゼロ幅スペース」の罠。。

投稿日:

見かけ上は誤字がないのに、メルアドエラーになる。。

お客様のメールマガジン配信代行を行っているが、新規アドレスを追加しようとしたところ、メルマガ配信ツールで「アドレス形式エラー」となり追加できないアドレスがあった。。
※当該アドレスを、仮に「ttt@bcd.com」としよう。
 
Excelの一覧表で頂いたのだが、どう見ても問題ない普通のメルアドに見える。。

これを、ワタシがいつも愛用しているテキストエディタ「秀丸」にコピペしたところ
「ttt@ bcd.com」のように「@」と「b」の間にナゾのスペースがあるではないか!

秀丸で保存してバイナリエディタで確認しようとするも、秀丸の保存時にエラーとなり保存できない。。
 

文字コード解析ツールで検証

文字コードを解析するサイトを探してみたら、、「リアルタイム文字コード変換/解析ツール」(*1)なるサイトがあった!
(*1) https://www.natade.net/webapp/mojicode-kaiseki/

このサイトに当該メルアドをコピペし解析してみたところ、、「@」と「b」の間に 文字コードUTF-8で「E2 80 8B」なるコードがあることが分かった。

 

「E2 80 8B」はゼロ幅スペース!

さらに「UTF-8 E2 80 8B」で検索すると、、ゼロ幅スペースとして事例がたくさんヒットした。

— Wikipediaより引用—–
ゼロ幅スペース(ゼロはばスペース、英: zero width space, ZWSP)は、コンピュータの組版に用いられる非表示文字で、文書処理システムに対して語の切れ目を示すのに用いる。

どうやら、英文などは「単語」単位で改行するが、このゼロ幅スペースが入っていると単語の途中でもこの場所で改行する、という位置表示、、ということのようだ。
 
プログラマ時代から30年以上コンピュータの世界にいるが、、「ゼロ幅スペース」なるものには初めて遭遇した。
最初ワケ分からなかったが、判明してスッキリした。。(^^;
 
 

-備忘録

関連記事

[備忘録]bash:標準出力/エラー出力のリダイレクト

標準出力とエラー出力ではレイヤーが異なる Bash(Linux)でコマンド操作をしているとき、通常の出力結果とエラー表示が混在して見にくくなることが多々ある。 また、出力結果をファイルにリダイレクトす …

[備忘録]Excel:開くと「PERSONAL.XLSBは編集のためロックされています」が出る

Excelウィンド 2つ目を開くと出る。。 ブログ[備忘録]Excelを複数の別ウィンドウで開く方法で、Excelを複数ウィンドで開く方法を書いた。 が、2つ目のウィンドを開くと「PERSONAL.X …

[備忘録]Firefox:バージョンアップしたらスクロールしなくなった!

Firefoxをバージョンアップすると、、いろいろ不具合(後方互換ナシ)が起こる。。 Firefoxをバージョンアップすると、、いろいろ不具合が起こる。。 ※これを「後方互換がない」と言う。 なので、 …

[備忘録]FileZilla:特定拡張子のパーミッションを一括変更する方法

全PHPファイルのパーミッションを変更したかった。。 とあるサイトで、拡張子「.php」のファイルだけを 全てパーミッション変更する必要が出てきた。。 ので、その方法を。 ※今回はFTPツールとして「 …

[備忘録]TransmitMailで件名が16文字で切れてしまう件

メールフォームツール「TransmitMail」で特定環境で発生する不具合 Webサイトの構築で、例えば「お問合せ」とかフォームのページを作る際、実際にメールとして飛ばすためのプログラムが必要になる。 …