質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

3回答

3408閲覧

エスケープ文字に変換できない謎の空白の正体

sutepresident

総合スコア0

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/11/26 05:07

お世話になります。
はじめて質問させていただきます。

ホームページにある、ある空白の正体を教えてほしいです。

https://3-ken.jp/page-43

具体的には、このホームページのテーブルの間にある代表者の間の空白です。(※代 表 者)

この間には、ノーブレークスペース( )が入っているのですが、その前にさらに謎の半角スペースが入っています。
これは、何の文字なのでしょうか。

Unicode変換したところ他の文字は\u3000などのエスケープ文字に変換されるのですが、この空白だけは空白のまま残ってしまいます。
ShiftJisなどの他の文字コードなのでしょうか。特殊な文字なのでしょうか。

知識のある方、ご教示お願いできませんでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/11/26 05:30 編集

&nbspでもなく単なる半角スペースだけに見受けられますが。どこのことか齟齬がないよう、文章説明だけでなく画面キャプチャをつけてください
m.ts10806

2020/11/26 05:31 編集

あと、知ってどうしたいのでしょう。 唐突に他人のサイト(しかも企業ですかね)を出しているというのもやってることとして微妙です。宣伝かなにか?
sutepresident

2020/11/26 05:34

ありがとうございます。半角スペースというと、「\u0020」ですかね。。 Googleの検証で、&nbspと表示されていたのですが、半角スペースなのでしょうか。 その1つ前に空白文字のようなものが入っていると思います。知りたいのはそちらになります。 この文字だけが何故かどうやっても変換できなかったので、ご質問させていただきました。 知ってどうしたいのかについては、会社からデータの整備を依頼されることがありますので、 処理テーブルの作成などの後学のために知りたいといった理由となります。 普通の半角スペースだとすれば、僕の処理の方法など別のところに原因があるのかもしれません。 ご回答ありがとうございました。
sutepresident

2020/11/26 05:45

ありがとうございます。 宣伝ではないですね。ホームページを乗せたのはコピーペーストすると別の文字に変換される可能性があるので、URLをそのまま乗せました。すいません。。。。 例えば、そのサイトの代 表 者をUnicode変換すると、下記のようになります。 (変換自体は、pythonのasciiという機能で行いました。) \u4ee3 \xa0\u8868 \xa0\u8005 というように、半角スペースがそのまま残るので、何故かなと思いまして…。 画像キャプチャーはこのあと載せます!
guest

回答3

0

解決ずみということですが、 が入っている箇所は、バイト列としては 0xC2 0xA0 でして、ユニコードのU+00A0 (no-break space) というコードです。これがGoogle Chromeの開発ツールでは、 とエンコードされた状態で表示されています。
下記の記事が参考になると思います。

ノーブレークスペース - Wikipedia

投稿2020/11/26 09:12

ockeghem

総合スコア11705

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Chromeで見る限りは半角スペース(\u0020)のように見えます。

代  表  者

\u4EE3\u0020\u0026\u006E\u0062\u0073\u0070\u003B\u8868\u0020\u0026\u006E\u0062\u0073\u0070\u003B\u8005

代 表 者

\u4EE3\u0020\u0020\u8868\u0020\u0020\u8005

投稿2020/11/26 05:44

HRS_O

総合スコア70

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sutepresident

2020/11/26 06:00

ご回答ありがとうございます。 やはり半角スペースでした!!すいません。。 pythonのre.subという正規表現の文字変換機能を使っても変換されないのでおかしいと思っていたのですが、正規表現のコードに誤りがあったようです。 先ほど修正したら、無事変換されました…!! それにしても、こちらでunicodeに直すと\u0020だけが「 」のまま残ってしまったのは仕様なのでしょうか。 \u4ee3 \xa0\u8868 \xa0\u8005 \u4EE3\u0020\u0020\u8868\u0020\u0020\u8005 ↑のようになってほしい ご回答に貴重なお時間を使っていただいたお二方、ありがとうございました。 それとおかしな質問をしてしまい、申し訳ありませんでした。
guest

0

自己解決

イメージ説明

st="代  表  者"

前:re.sub("\u3000\xa0\u2002\u0020","",st)
後:re.sub("[\u3000\xa0\u2002\u0020]","",st)

・正規表現の[]が抜けていただけでした…。
お時間を取らせてしまったお二方には申し訳ないです。

pythonのasciiという機能で、unicodeに変換した際に、半角スペースだけが\u0020でなく、
何故かそのまま残ってしまったので、特殊な文字かと邪推してしまいました。

ありがとうございました。

投稿2020/11/26 06:06

sutepresident

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問