コードを通じてHTMLエスケープ文字を識別する方法について説明します

コードを通じてHTMLエスケープ文字を識別する方法について説明します

データ内に次のような特徴を持つ「 ' 」などの文字が含まれることがあります。

&# で始まり、中間に数字の文字列があり、; で終わります。& で始まり、中間に文字列があり、; で終わります。

たとえば、最も一般的な   または同等の  

ブラウザはこれらのエスケープ文字に遭遇すると、それらをエスケープしますが、コードを通じてそれらをどのように識別できるでしょうか? org.apache.commons.lang.StringEscapeUtils.unescapeHtmlは良い説明を提供します

上記の最初のケースでは、真ん中に数字がある場合は、数字(Unicode)を直接charに変換します。
2 番目のケースでは、真ん中に文字があります。マッピング テーブルを参照して、マッピング テーブルから文字に対応する番号を見つけ、それを char に変換するしかありません。コードを見ると、一目でわかります。

HTML40の定義をご覧ください

コードをコピー
コードは次のとおりです。

静的{
HTML40 = 新しいエンティティ();
HTML40エンティティをHtml40で埋めます。
}
静的void fillWithHtml40Entities(エンティティエンティティ) {
エンティティを追加します。(BASIC_ARRAY);
エンティティを追加します。(ISO8859_1_ARRAY);
エンティティを追加します。(HTML40_ARRAY);
}

BASIC_ARRAY、ISO8859_1_ARRAY、HTML40_ARRAYがそれぞれ何であるかを見てみましょう。

基本配列

コードをコピー
コードは次のとおりです。

private static final String[][] BASIC_ARRAY = {{"quot", "34"}, // " - 二重引用符
{"amp", "38"}, // & - アンパサンド
{"lt", "60"}, // < - より小さい
{"gt", "62"}, // > - より大きい
};

ISO8859_1_配列

コードをコピー
コードは次のとおりです。

static final String[][] ISO8859_1_ARRAY = {{"nbsp", "160"}, // 改行なしスペース
{"iexcl", "161"}, // 逆の感嘆符
{"cent", "162"}, // セント記号
{"pound", "163"}, // ポンド記号
{"currency", "164"}, // 通貨記号
{"yen", "165"}, // 円記号 = 元記号
{"brvbar", "166"}, // broken bar = broken vertical bar
{"sect", "167"}, // セクション記号
{"uml", "168"}, // 分音記号 = スペース分音記号
{"copy", "169"}, // � - 著作権記号
{"ordf", "170"}, // 女性序数指示子
{"laquo", "171"}, // 左向きの二重山引用符 = 左向きのギュイメット
{"not", "172"}, // 否定記号
{"shy", "173"}, // ソフトハイフン = 任意ハイフン
{"reg", "174"}, // � - 登録商標記号
{"macr", "175"}, // マクロン = スペース マクロン = オーバーライン = APL オーバーバー
{"deg", "176"}, // 度記号
{"plusmn", "177"}, // プラスマイナス記号 = プラスまたはマイナス記号
{"sup2", "178"}, // 上付き文字 2 = 上付き数字 2 = 2 乗
{"sup3", "179"}, // 上付き文字 3 = 上付き数字 3 = 3 乗
{"acute", "180"}, // acute アクセント = スペース acute
{"micro", "181"}, // マイクロ記号
{"para", "182"}, // pilcrow 記号 = 段落記号
{"middot", "183"}, // ミドルドット = グルジア語のコンマ = ギリシャ語のミドルドット
{"cedil", "184"}, // セディーユ = 間隔セディーユ
{"sup1", "185"}, // 上付き文字 1 = 上付き数字 1
{"ordm", "186"}, // 男性序数指示子
{"raquo", "187"}, // 右向きの二重山引用符 = 右向きのギュイメット
{"frac14", "188"}, // 俗分数 1/4 = 分数 1/4
{"frac12", "189"}, // 俗分数 1/2 = 分数 1/2
{"frac34", "190"}, // 俗分数の 4 分の 3 = 分数の 4 分の 3
{"iquest", "191"}, // 逆疑問符 = 反転疑問符
{"Agrave", "192"}, // � - 大文字の A、グレーブアクセント
{"Aacute", "193"}, // � - 大文字の A、鋭アクセント
{"Acirc", "194"}, // � - 大文字の A、曲折アクセント
{"Atilde", "195"}, // � - 大文字の A、チルダ
{"Auml", "196"}, // � - 大文字の A、ウムラウト
{"Aring", "197"}, // � - 大文字の A、リング
{"AElig", "198"}, // � - 大文字の AE
{"Ccedil", "199"}, // � - 大文字の C、セディーユ
{"Egrave", "200"}, // � - 大文字の E、グレーブアクセント
{"Eacute", "201"}, // � - 大文字の E、鋭アクセント
{"Ecirc", "202"}, // � - 大文字の E、曲折アクセント
{"Euml", "203"}, // � - 大文字の E、ウムラウト
{"Igrave", "204"}, // � - 大文字の I、重アクセント
{"Iacute", "205"}, // � - 大文字の I、鋭アクセント
{"Icirc", "206"}, // � - 大文字の I、曲折アクセント
{"Iuml", "207"}, // � - 大文字の I、ウムラウト
{"ETH", "208"}, // � - 大文字の Eth、アイスランド語
{"Ntilde", "209"}, // � - 大文字の N、チルダ
{"Ograve", "210"}, // � - 大文字の O、重アクセント
{"Oacute", "211"}, // � - 大文字の O、鋭アクセント
{"Ocirc", "212"}, // � - 大文字の O、曲折アクセント
{"Otilde", "213"}, // � - 大文字の O、チルダ
{"Ouml", "214"}, // � - 大文字の O、ウムラウト
{"times", "215"}, // 乗算記号
{"Oslash", "216"}, // � - 大文字の O、スラッシュ
{"Ugrave", "217"}, // � - 大文字の U、重アクセント
{"Uacute", "218"}, // � - 大文字の U、鋭アクセント
{"Ucirc", "219"}, // � - 大文字の U、曲折アクセント
{"Uuml", "220"}, // � - 大文字の U、ウムラウト
{"Yacute", "221"}, // � - 大文字の Y、鋭アクセント
{"THORN", "222"}, // � - 大文字の THORN、アイスランド語
{"szlig", "223"}, // � - 小文字のシャープ、ドイツ語
{"agrave", "224"}, // � - 小文字の a、グレーブアクセント
{"aacute", "225"}, // � - 小文字の a、鋭アクセント
{"acirc", "226"}, // � - 小文字の a、曲折アクセント
{"atilde", "227"}, // � - 小文字の a、チルダ
{"auml", "228"}, // � - 小文字の a、ウムラウト
{"aring", "229"}, // � - 小文字の a、リング
{"aelig", "230"}, // � - 小文字の ae
{"ccedil", "231"}, // � - 小文字の c、セディーユ
{"egrave", "232"}, // � - 小文字の e、アクセント記号
{"eacute", "233"}, // � - 小文字の e、鋭アクセント
{"ecirc", "234"}, // � - 小文字の e、曲折アクセント
{"euml", "235"}, // � - 小文字の e、ウムラウト
{"igrave", "236"}, // � - 小文字の i、重アクセント
{"iacute", "237"}, // � - 小文字の i、鋭アクセント
{"icirc", "238"}, // � - 小文字の i、曲折アクセント
{"iuml", "239"}, // � - 小文字の i、ウムラウト
{"eth", "240"}, // � - 小文字の eth、アイスランド語
{"ntilde", "241"}, // � - 小文字の n、チルダ
{"ograve", "242"}, // � - 小文字の o、重アクセント
{"oacute", "243"}, // � - 小文字の o、鋭アクセント
{"ocirc", "244"}, // � - 小文字の o、曲折アクセント
{"otilde", "245"}, // � - 小文字の o、チルダ
{"ouml", "246"}, // � - 小文字の o、ウムラウト
{"divide", "247"}, // 除算記号
{"oslash", "248"}, // � - 小文字の o、スラッシュ
{"ugrave", "249"}, // � - 小文字の u、重アクセント
{"uacute", "250"}, // � - 小文字の u、鋭アクセント
{"ucirc", "251"}, // � - 小文字の u、曲折アクセント
{"uuml", "252"}, // � - 小文字の u、ウムラウト
{"yacute", "253"}, // � - 小文字の y、鋭アクセント
{"thorn", "254"}, // � - 小文字の thorn、アイスランド語
{"yuml", "255"}, // � - 小文字の y、ウムラウト
};

HTML40_配列

コードをコピー
コードは次のとおりです。

静的最終String[][] HTML40_ARRAY = {
// <!-- ラテン拡張 B -->
{"fnof", "402"}, // フック付きラテン小文字 f = 関数 = フロリン、U+0192 ISOtech -->
// <!-- ギリシャ語 -->
{"Alpha", "913"}, // ギリシャ語大文字のアルファ、U+0391 -->
{"Beta", "914"}, // ギリシャ語大文字ベータ、U+0392 -->
{"Gamma", "915"}, // ギリシャ語大文字ガンマ、U+0393 ISOgrk3 -->
{"Delta", "916"}, // ギリシャ語大文字デルタ、U+0394 ISOgrk3 -->
{"Epsilon", "917"}, // ギリシャ語大文字イプシロン、U+0395 -->
{"Zeta", "918"}, // ギリシャ語大文字ゼータ、U+0396 -->
{"Eta", "919"}, // ギリシャ語大文字のイータ、U+0397 -->
{"Theta", "920"}, // ギリシャ語大文字のシータ、U+0398 ISOgrk3 -->
{"Iota", "921"}, // ギリシャ語大文字イオタ、U+0399 -->
{"Kappa", "922"}, // ギリシャ語大文字の kappa、U+039A -->
{"Lambda", "923"}, // ギリシャ語大文字ラムダ、U+039B ISOgrk3 -->
{"Mu", "924"}, // ギリシャ語大文字 mu, U+039C -->
{"Nu", "925"}, // ギリシャ語大文字 nu, U+039D -->
{"Xi", "926"}, // ギリシャ語大文字 xi, U+039E ISOgrk3 -->
{"オミクロン", "927"}, // ギリシャ語大文字オミクロン、U+039F -->
{"Pi", "928"}, // ギリシャ語大文字π、U+03A0 ISOgrk3 -->
{"Rho", "929"}, // ギリシャ語大文字 rho, U+03A1 -->
// <!-- Sigmaf はなく、U+03A2 文字もありません -->
{"Sigma", "931"}, // ギリシャ語大文字シグマ、U+03A3 ISOgrk3 -->
{"Tau", "932"}, // ギリシャ語大文字タウ、U+03A4 -->
{"Upsilon", "933"}, // ギリシャ語大文字のウプシロン、U+03A5 ISOgrk3 -->
{"Phi", "934"}, // ギリシャ語大文字ファイ、U+03A6 ISOgrk3 -->
{"Chi", "935"}, // ギリシャ語大文字の chi, U+03A7 -->
{"Psi", "936"}, // ギリシャ語大文字 psi、U+03A8 ISOgrk3 -->
{"オメガ", "937"}, // ギリシャ語大文字オメガ、U+03A9 ISOgrk3 -->
{"alpha", "945"}, // ギリシャ小文字アルファ、U+03B1 ISOgrk3 -->
{"beta", "946"}, // ギリシャ語小文字ベータ、U+03B2 ISOgrk3 -->
{"gamma", "947"}, // ギリシャ小文字ガンマ、U+03B3 ISOgrk3 -->
{"delta", "948"}, // ギリシャ語小文字デルタ、U+03B4 ISOgrk3 -->
{"epsilon", "949"}, // ギリシャ語小文字イプシロン、U+03B5 ISOgrk3 -->
{"zeta", "950"}, // ギリシャ語小文字ゼータ、U+03B6 ISOgrk3 -->
{"eta", "951"}, // ギリシャ語小文字 eta、U+03B7 ISOgrk3 -->
{"theta", "952"}, // ギリシャ語小文字シータ、U+03B8 ISOgrk3 -->
{"iota", "953"}, // ギリシャ小文字イオタ、U+03B9 ISOgrk3 -->
{"kappa", "954"}, // ギリシャ語小文字 kappa, U+03BA ISOgrk3 -->
{"lambda", "955"}, // ギリシャ小文字ラムダ、U+03BB ISOgrk3 -->
{"mu", "956"}, // ギリシャ語小文字 mu、U+03BC ISOgrk3 -->
{"nu", "957"}, // ギリシャ語小文字 nu、U+03BD ISOgrk3 -->
{"xi", "958"}, // ギリシャ語小文字 xi、U+03BE ISOgrk3 -->
{"omicron", "959"}, // ギリシャ語の小文字オミクロン、U+03BF NEW -->
{"pi", "960"}, // ギリシャ小文字π、U+03C0 ISOgrk3 -->
{"rho", "961"}, // ギリシャ語小文字 rho、U+03C1 ISOgrk3 -->
{"sigmaf", "962"}, // ギリシャ語小文字末尾シグマ、U+03C2 ISOgrk3 -->
{"sigma", "963"}, // ギリシャ小文字シグマ、U+03C3 ISOgrk3 -->
{"tau", "964"}, // ギリシャ語小文字タウ、U+03C4 ISOgrk3 -->
{"upsilon", "965"}, // ギリシャ語小文字ウプシロン、U+03C5 ISOgrk3 -->
{"phi", "966"}, // ギリシャ語小文字ファイ、U+03C6 ISOgrk3 -->
{"chi", "967"}, // ギリシャ語小文字 chi, U+03C7 ISOgrk3 -->
{"psi", "968"}, // ギリシャ語小文字 psi、U+03C8 ISOgrk3 -->
{"omega", "969"}, // ギリシャ語小文字オメガ、U+03C9 ISOgrk3 -->
{"thetasym", "977"}, // ギリシャ語の小文字シータ記号、U+03D1 NEW -->
{"upsih", "978"}, // ギリシャ語のウプシロンとフック記号、U+03D2 NEW -->
{"piv", "982"}, // ギリシャのπ記号、U+03D6 ISOgrk3 -->
// <!-- 一般的な句読点 -->
{"bull", "8226"}, // 箇条書き = 黒い小さな円、U+2022 ISOpub -->
// <!-- 箇条書きは、箇条書き演算子 (U+2219) と同じではありません -->
{"hellip", "8230"}, // 水平省略記号 = 3 つのドットリーダー、U+2026 ISOpub -->
{"prime", "8242"}, // prime = 分 = フィート, U+2032 ISOtech -->
{"Prime", "8243"}, // ダブルプライム = 秒 = インチ、U+2033 ISOtech -->
{"oline", "8254"}, // overline = スペースオーバースコア、U+203E NEW -->
{"frasl", "8260"}, // 分数スラッシュ、U+2044 NEW -->
// <!-- 文字のような記号 -->
{"weierp", "8472"}, // スクリプトの大文字 P = べき乗集合 = Weierstrass p、U+2118 ISOamso -->
{"image", "8465"}, // ブラックレター大文字 I = 虚数部、U+2111 ISOamso -->
{"real", "8476"}, // 黒文字大文字 R = 実部記号、U+211C ISOamso -->
{"trade", "8482"}, // 商標記号、U+2122 ISOnum -->
{"alefsym", "8501"}, // alef 記号 = 最初の超限基数、U+2135 NEW -->
// <!-- アレフ記号はヘブライ文字のアレフ(U+05D0)と同じではありませんが、
// 同じグリフを使用して両方の文字を表すことができます -->
// <!-- 矢印 -->
{"larr", "8592"}, // 左矢印、U+2190 ISOnum -->
{"uarr", "8593"}, // 上矢印、U+2191 ISOnum-->
{"rarr", "8594"}, // 右矢印、U+2192 ISOnum -->
{"darr", "8595"}, // 下矢印、U+2193 ISOnum -->
{"harr", "8596"}, // 左矢印、右矢印、U+2194 ISOamsa -->
{"crarr", "8629"}, // 左向きの角の下矢印 = キャリッジリターン、U+21B5 NEW -->
{"lArr", "8656"}, // 左向き二重矢印、U+21D0 ISOtech -->
// <!-- ISO 10646 では、lArr は 'is implied by' と同じであるとは述べられていません。
// 矢印ですが、その機能には他の文字もありません。
// それで? lArr は ISOtech が示唆するように「is implied by」に使用できます -->
{"uArr", "8657"}, // 上向き二重矢印、U+21D1 ISOamsa -->
{"rArr", "8658"}, // 右向き二重矢印、U+21D2 ISOtech -->
// <!-- ISO 10646では、これが「意味する」文字であるとは述べられていないが、
// この関数には別の文字があるので、?rArr は次のように使用できます。
// ISOtech が示唆するように「暗示」 -->
{"dArr", "8659"}, // 下向き二重矢印、U+21D3 ISOamsa -->
{"hArr", "8660"}, // 左から右への二重矢印、U+21D4 ISOamsa -->
// <!-- 数学演算子 -->
{"forall", "8704"}, // すべて、U+2200 ISOtech -->
{"part", "8706"}, // 偏微分、U+2202 ISOtech -->
{"exist", "8707"}, // 存在する、U+2203 ISOtech -->
{"empty", "8709"}, // 空集合 = null 集合 = 直径、U+2205 ISOamso -->
{"nabla", "8711"}, // nabla = 後方差分、U+2207 ISOtech -->
{"isin", "8712"}, // 要素、U+2208 ISOtech -->
{"notin", "8713"}, // U+2209 ISOtech の要素ではない -->
{"ni", "8715"}, // メンバーとして U+220B ISOtech が含まれています -->
// <!-- 「ni」よりも覚えやすい名前があるべきでしょうか? -->
{"prod", "8719"}, // n項積 = 積記号、U+220F ISOamsb -->
// <!-- prod は U+03A0 'ギリシャ語大文字の pi' と同じ文字ではありません
// 同じグリフが両方に使用される場合もあります -->
{"sum", "8721"}, // n項和、U+2211 ISOamsb -->
// <!-- sum は U+03A3 'ギリシャ語大文字シグマ' と同じ文字ではありません
// 同じグリフが両方に使用される場合もあります -->
{"minus", "8722"}, // マイナス記号、U+2212 ISOtech -->
{"lowast", "8727"}, // アスタリスク演算子、U+2217 ISOtech -->
{"radic", "8730"}, // 平方根 = 根号、U+221A ISOtech -->
{"prop", "8733"}, // 比例、U+221D ISOtech -->
{"infin", "8734"}, // 無限大、U+221E ISOtech -->
{"ang", "8736"}, // 角度、U+2220 ISOamso -->
{"and", "8743"}, // 論理積 = ウェッジ、U+2227 ISOtech -->
{"or", "8744"}, // 論理和 = vee, U+2228 ISOtech -->
{"cap", "8745"}, // 交差 = cap, U+2229 ISOtech -->
{"cup", "8746"}, // ユニオン = cup, U+222A ISOtech -->
{"int", "8747"}, // 整数、U+222B ISOtech -->
{"there4", "8756"}, // したがって、U+2234 ISOtech -->
{"sim", "8764"}, // チルダ演算子 = は次のように変化する = に類似、U+223C ISOtech -->
// <!-- チルダ演算子はチルダU+007Eと同じ文字ではありませんが、
// 同じグリフが両方を表すために使用される可能性があります -->
{"cong", "8773"}, // ほぼ等しい、U+2245 ISOtech -->
{"asymp", "8776"}, // ほぼ等しい = 漸近的、U+2248 ISOamsr -->
{"ne", "8800"}, // 等しくない、U+2260 ISOtech -->
{"equiv", "8801"}, // 同一、U+2261 ISOtech -->
{"le", "8804"}, // 以下、U+2264 ISOtech -->
{"ge", "8805"}, // 以上、U+2265 ISOtech -->
{"sub", "8834"}, // サブセット、U+2282 ISOtech -->
{"sup", "8835"}, // スーパーセット、U+2283 ISOtech -->
// <!-- nsup、「U+2283のスーパーセットではない」は、
// シンボル フォント エンコーディングが含まれていません。対称性のために、含めるべきでしょうか?
// ISOamsn にあります --> <!ENTITY nsub", "8836"},
// サブセットではありません、U+2284 ISOamsn -->
{"sube", "8838"}, // サブセットまたは等しい、U+2286 ISOtech -->
{"supe", "8839"}, // スーパーセットまたは等しい、U+2287 ISOtech -->
{"oplus", "8853"}, // 丸付きプラス = 直和、U+2295 ISOamsb -->
{"otimes", "8855"}, // 丸で囲まれた回数 = ベクトル積、U+2297 ISOamsb -->
{"perp", "8869"}, // アップタック = 直交 = 垂直、U+22A5 ISOtech -->
{"sdot", "8901"}, // ドット演算子、U+22C5 ISOamsb -->
// <!-- ドット演算子は U+00B7 の中間ドットと同じ文字ではありません -->
// <!-- その他技術的な情報 -->
{"lceil", "8968"}, // 左天井 = apl upstile, U+2308 ISOamsc -->
{"rceil", "8969"}, // 右天井、U+2309 ISOamsc -->
{"lfloor", "8970"}, // 左フロア = apl downstile, U+230A ISOamsc -->
{"rfloor", "8971"}, // 右階、U+230B ISOamsc -->
{"lang", "9001"}, // 左向きの山括弧 = bra, U+2329 ISOtech -->
// <!-- lang は U+003C 'less than' または U+2039 'single left-pointing angle quote と同じ文字ではありません
// マーク' -->
{"rang", "9002"}, // 右向きの山括弧 = ket, U+232A ISOtech -->
// <!-- rang は U+003E 'より大きい' または U+203A と同じ文字ではありません
// '右向きの単一の山引用符' -->
// <!-- 幾何学的形状 -->
{"loz", "9674"}, // 菱形、U+25CA ISOpub -->
// <!-- その他のシンボル -->
{"spades", "9824"}, // 黒スペードスーツ、U+2660 ISOpub -->
// <!-- ここでの黒は、空洞ではなく、満たされていることを意味するようです -->
{"clubs", "9827"}, // 黒のクラブスーツ = シャムロック、U+2663 ISOpub -->
{"hearts", "9829"}, // 黒のハートのスーツ = バレンタイン、U+2665 ISOpub -->
{"diams", "9830"}, // ブラックダイヤモンドスーツ、U+2666 ISOpub -->
// <!-- ラテン拡張-A -->
{"OElig", "338"}, // -- ラテン大文字合字 OE,U+0152 ISOlat2 -->
{"oelig", "339"}, // -- ラテン小文字合字 oe、U+0153 ISOlat2 -->
// <!-- 合字は誤った名称です。これは一部の言語では別の文字です -->
{"Scaron", "352"}, // -- ラテン大文字 S とキャロン、U+0160 ISOlat2 -->
{"scaron", "353"}, // -- キャロン付きラテン小文字 s、U+0161 ISOlat2 -->
{"Yuml", "376"}, // -- 分音記号付きラテン大文字 Y、U+0178 ISOlat2 -->
// <!-- スペース修飾文字 -->
{"circ", "710"}, // -- 修飾文字サーカムフレックスアクセント、U+02C6 ISOpub -->
{"tilde", "732"}, // 小文字のチルダ、U+02DC ISOdia -->
// <!-- 一般的な句読点 -->
{"ensp", "8194"}, // en スペース、U+2002 ISOpub -->
{"emsp", "8195"}, // emスペース、U+2003 ISOpub -->
{"thinsp", "8201"}, // 細いスペース、U+2009 ISOpub -->
{"zwnj", "8204"}, // ゼロ幅非結合子、U+200C NEW RFC 2070 -->
{"zwj", "8205"}, // ゼロ幅ジョイナー、U+200D NEW RFC 2070 -->
{"lrm", "8206"}, // 左から右へのマーク、U+200E NEW RFC 2070 -->
{"rlm", "8207"}, // 右から左へのマーク、U+200F NEW RFC 2070 -->
{"ndash", "8211"}, // エンダッシュ、U+2013 ISOpub -->
{"mdash", "8212"}, // em ダッシュ、U+2014 ISOpub -->
{"lsquo", "8216"}, // 左一重引用符、U+2018 ISOnum -->
{"rsquo", "8217"}, // 右一重引用符、U+2019 ISOnum -->
{"sbquo", "8218"}, // 単一低位 9 引用符、U+201A NEW -->
{"ldquo", "8220"}, // 左二重引用符、U+201C ISOnum -->
{"rdquo", "8221"}, // 右二重引用符、U+201D ISOnum -->
{"bdquo", "8222"}, // 二重の低位 9 引用符、U+201E NEW -->
{"dagger", "8224"}, // 短剣, U+2020 ISOpub -->
{"Dagger", "8225"}, // 二重の短剣、U+2021 ISOpub -->
{"permil", "8240"}, // パーミル記号、U+2030 ISOtech -->
{"lsaquo", "8249"}, // 単一の左向きの角引用符、U+2039 ISO 提案 -->
// <!-- lsaquo は提案されていますが、まだ ISO 標準化されていません -->
{"rsaquo", "8250"}, // 右向きの単一の角引用符、U+203A ISO 提案 -->
// <!-- rsaquo は提案されていますが、まだ ISO 標準化されていません -->
{"euro", "8364"}, // -- ユーロ記号、U+20AC NEW -->
};

さらに拡大

前のセクションから、エスケープ文字の真ん中の数字は Unicode であることがわかります。したがって、このエスケープ文字は上記の定義に限定されず、任意に構成できます。たとえば、の Unicode は 20013 なので、エスケープ文字 &#20013; を構成すると、ブラウザーによってレンダリングされた後に in に戻ります。文字を表示するためにこのように迂回する必要はありませんが、特殊文字を伝送するのが不便なシナリオでは役立つ場合があります。

<<:  CSS スタイルの導入方法とその長所と短所の紹介

>>:  jQueryのコピーオブジェクトの詳細な説明

推薦する

Javascriptでビルダーパターンを実装する方法

概要ビルダー パターンは比較的単純なデザイン パターンであり、作成パターンに属します。定義: 複雑な...

Linux で Jenkins プロジェクトを構築するプロセス (CentOS 7 を例に)

https://gitee.com/tengge1/ShadowEditor のデプロイメントを例...

Docker チュートリアル: コンテナの使用 (簡単な例)

Docker を初めて使用する場合は、コンテナの管理を始めるために習得する必要がある基本的なコマン...

Vue3でカルーセルコンポーネントをカプセル化する方法

目的カルーセルコンポーネントをカプセル化して直接使用します。具体的な内容は以下のとおりです。一般的な...

MySQLの高性能最適化スキルの概要

データベースコマンド仕様すべてのデータベース オブジェクト名には小文字を使用し、アンダースコアで区切...

JS上級編ES6の6つの継承方法

目次1. プロトタイプチェーン継承2. コンストラクタによる継承3. 組み合わせ継承4. プロトタイ...

jsネイティブ構文プロトタイプ、__proto__、コンストラクタの徹底的な理解

目次1 はじめに2 前提条件2.1 データ型2.2 それが自身のプロパティであるかどうかを判断する ...

Windows Server 2019 で NAS を構成する方法

序文このチュートリアルでは最新バージョンをインストールします。 NAS は非常に安定して動作するので...

判定条件を使用してCSSファイルをインポートする

解決策 1: HEAD に次のコードを挿入するなど、HTML ドキュメントで条件付きインポートを使用...

docker-compose を使用して Clickhouse をすばやくデプロイする方法のチュートリアル

ClickHouse は、オープンソースの列指向 DBMS (Yandex によって開発) です。 ...

Django2.* + Mysql5.7 開発環境統合チュートリアル図

環境: 10.12 の新機能Python 3.6 MySQL 5.7.25 の場合ジャンゴ 2.2....

JavaScript 関数をよりエレガントにする方法

目次分割代入を使用したオブジェクトパラメータコールバック関数の命名条件文を説明的にするスイッチ文をM...

最高の無料英語フォント33選を紹介

チャンクファイブフリータイプファミリーCuprum JAH I フリーフォントイェセヴァブークレフィ...

NGINXがウェブサイトのPV、UV、独立IPをカウントする方法の詳細な説明

Nginx: PV、UV、独立IPウェブサイトを作成する人なら誰でも、ウェブサイトのPV、UV、その...

非常に便利なオープンソース Docker ツール 5 つを強くお勧めします

導入Docker コミュニティは、さまざまなユースケースを処理するのに役立つ多くのオープンソース ツ...