実体参照
日本語 | 実体参照 |
英語 | entity reference |
ふりがな | じったいさんしょう |
フリガナ | ジッタイサンショウ |
HTMLで、主に特殊な文字を出力するために使用される特殊な単語。
「<」や「<」といった書き方のこと。
「数値文字実体参照」「エンティティコード」とも言う。
たとえば、HTMLタグそのものを出力したい場合、「<IMG>」とそのまま書いてしまうと、HTMLタグと認識されてしまうため、出力されない。これは、「<」や「>」が、タグを囲む記号と見なされるためである。
そこで、「<」や「>」を、そのままの文字として出力する方法が必要となる。
そのための記法が「実体参照」である。
実体参照には2通りの書き方がある。
■文字実体参照
「文字の名前」を指定する方法。
「&文字の名前;」とすることで、その文字が出力される。
よく使われる文字の「文字の名前」は、以下の通り。
・「"」:"
・「&」:&
・「<」:<
・「>」:>
・「 」:
たとえば、「<"あい&うえお">」をHTMLで出力する場合には「<"あい&うえお">」と記述することになる。
その他、多くの文字や記号にこの名前が付けられているが、このように変に短縮されているため分かりにくい。
■数値文字参照
「Unicodeでの文字コード」を指定する方法。
「
進数の文字コード;」、もしくは「進数の文字コード;」という形でUnicodeの文字コードを指定すると、その文字を出力することができる。
たとえば「あ」はUnicodeでは0x3042(==12354)のため、「あ」もしくは「あ」と記述する。
数値文字参照であれば、Unicodeの文字であればたいがいの文字を表現することができる。
ただし、Webブラウザが対応していること、クライアント側にフォントが存在することが条件となる。
「文字実体参照」と「数値文字参照」は、記法が異なるだけで、基本的に同じ機能である。
使い分けとしては、「<」等の「よく使われる記号」は「文字実体参照」を使用し、それ以外は「数値文字参照」を使用するのがいいだろう。
実体参照は、JSPやサーブレットからHTMLを出力する際に行う「サニタイジング」で使用する。
「<」や「<」といった書き方のこと。
「数値文字実体参照」「エンティティコード」とも言う。
たとえば、HTMLタグそのものを出力したい場合、「<IMG>」とそのまま書いてしまうと、HTMLタグと認識されてしまうため、出力されない。これは、「<」や「>」が、タグを囲む記号と見なされるためである。
そこで、「<」や「>」を、そのままの文字として出力する方法が必要となる。
そのための記法が「実体参照」である。
実体参照には2通りの書き方がある。
■文字実体参照
「文字の名前」を指定する方法。
「&文字の名前;」とすることで、その文字が出力される。
よく使われる文字の「文字の名前」は、以下の通り。
・「"」:"
・「&」:&
・「<」:<
・「>」:>
・「 」:
たとえば、「<"あい&うえお">」をHTMLで出力する場合には「<"あい&うえお">」と記述することになる。
その他、多くの文字や記号にこの名前が付けられているが、このように変に短縮されているため分かりにくい。
■数値文字参照
「Unicodeでの文字コード」を指定する方法。
「
進数の文字コード;」、もしくは「進数の文字コード;」という形でUnicodeの文字コードを指定すると、その文字を出力することができる。
たとえば「あ」はUnicodeでは0x3042(==12354)のため、「あ」もしくは「あ」と記述する。
数値文字参照であれば、Unicodeの文字であればたいがいの文字を表現することができる。
ただし、Webブラウザが対応していること、クライアント側にフォントが存在することが条件となる。
「文字実体参照」と「数値文字参照」は、記法が異なるだけで、基本的に同じ機能である。
使い分けとしては、「<」等の「よく使われる記号」は「文字実体参照」を使用し、それ以外は「数値文字参照」を使用するのがいいだろう。
実体参照は、JSPやサーブレットからHTMLを出力する際に行う「サニタイジング」で使用する。
参考サイト
- (参考サイトはありません)
<!-- webapps/sample-servlet/sample.html -->
<!-- http://localhost:8080/sample-servlet/sample.html でアクセスできます。 -->
<!-- 注:「Webアプリケーション」の項目を読んで、その準備をしてからお試しください。 -->
<HTML>
<HEAD>
<TITLE>HTMLサンプル</TITLE>
</HEAD>
<BODY>
■文字実体参照<BR>
「<"あい&うえお">」<BR>
<!-- →出力結果:「<"あい&うえお">」 -->
<BR>
■数値文字参照
「あ」/「あ」<BR>
<!-- →出力結果:「あ」/「あ」 -->
</BODY>
</HTML>
<!-- http://localhost:8080/sample-servlet/sample.html でアクセスできます。 -->
<!-- 注:「Webアプリケーション」の項目を読んで、その準備をしてからお試しください。 -->
<HTML>
<HEAD>
<TITLE>HTMLサンプル</TITLE>
</HEAD>
<BODY>
■文字実体参照<BR>
「<"あい&うえお">」<BR>
<!-- →出力結果:「<"あい&うえお">」 -->
<BR>
■数値文字参照
「あ」/「あ」<BR>
<!-- →出力結果:「あ」/「あ」 -->
</BODY>
</HTML>
<!-- webapps/sample-servlet/sample.html --> <!-- http://localhost:8080/sample-servlet/sample.html でアクセスできます。 --> <!-- 注:「Webアプリケーション」の項目を読んで、その準備をしてからお試しください。 --> <HTML> <HEAD> <TITLE>HTMLサンプル</TITLE> </HEAD> <BODY> ■文字実体参照<BR> 「<"あい&うえお">」<BR> <!-- →出力結果:「<"あい&うえお">」 --> <BR> ■数値文字参照 「あ」/「あ」<BR> <!-- →出力結果:「あ」/「あ」 --> </BODY> </HTML>