Maison >interface Web >tutoriel HTML >Expliquer comment identifier les caractères d'échappement HTML via la production de pages code_HTML/Xhtml_Web

Expliquer comment identifier les caractères d'échappement HTML via la production de pages code_HTML/Xhtml_Web

WBOY
WBOYoriginal
2016-05-16 16:39:171995parcourir

De temps en temps, vous verrez des caractères tels que ' dans les données. Les caractéristiques sont les suivantes

Commence par , est une chaîne de chiffres au milieu et se termine par ;
Commence par & et se trouve au milieu. Caractères de chaîne se terminant par

, comme le plus courant   ou l'équivalent

Lorsque le navigateur rencontre ces caractères d'échappement. , cela leur échappera, mais comment passer le code Identifier ? org.apache.commons.lang.StringEscapeUtils.unescapeHtml fournit une bonne explication

Lorsque vous rencontrez la première situation ci-dessus, le milieu est un nombre, convertissez directement le nombre (unicode) en char
Au cas où Dans le deuxième cas, il y a des caractères au milieu. Vous ne pouvez vérifier que la table de mappage. Trouvez le numéro correspondant au caractère dans la table de mappage et convertissez-le en char. Cela sera clair en un coup d'œil si vous regardez le code
Regardez comment HTML40 le définit


Copier le codeLe code est le suivant :
static {
HTML40 = new Entities();
fillWithHtml40Entities(HTML40);
}
static void fillWithHtml40Entities(Entities entités) {
entities.addEntities(BASIC_ARRAY); 🎜>entities.addEntities(ISO8859_1_ARRAY);
entities.addEntities( HTML40_ARRAY);
}


Regardez ce que sont respectivement BASIC_ARRAY, ISO8859_1_ARRAY et HTML40_ARRAY

BASIC_ARRAY



Copier le codeLe code est le suivant :
Chaîne finale statique privée[][ ] BASIC_ARRAY = {{"quot", "34"}, // " - guillemets
{"amp", "38"}, // & - esperluette
{"lt", "60" }, // < - inférieur à
{"gt", "62"}, // > - supérieur à
} ; 🎜>


Copier le code


Le code est le suivant :

String final statique[][] ISO8859_1_ARRAY = {{"nbsp", "160"}, // espace insécable
{"iexcl", "161"}, // point d'exclamation inversé
{"cent", "162"}, // signe cent
{"pound", "163"}, // signe dièse
{"curren", "164"}, // devise signe
{"yen", "165"}, // signe yen = signe yuan
{"brvbar", "166"}, // barre cassée = barre verticale cassée
{"sect", "167"}, // signe de section
{"uml", "168"}, // tréma = espacement tréma
{"copie", "169"}, // � - signe de copyright
{"ordf", "170"}, // indicateur ordinal féminin
{"laquo", "171"}, // guillemet double angle pointant vers la gauche = guillemet pointant vers la gauche
{"not", " 172"}, // pas de signe
{"timide", "173"}, // trait d'union doux = trait d'union discrétionnaire
{"reg", "174"}, // � - signe de marque déposée
{"macr", "175"}, // macron = espacement macron = overline = barre supérieure APL
{"deg", "176"}, // signe du degré
{"plusmn", "177" }, // signe plus-moins = signe plus ou moins
{"sup2", "178"}, // exposant deux = chiffre exposant deux = carré
{"sup3", "179"} , // exposant trois = chiffre trois en exposant = cube
{"aigu", "180"}, // accent aigu = espacement aigu
{"micro", "181"}, // signe micro
{"para", "182"}, // signe du corbeau = signe du paragraphe
{"middot", "183"}, // point du milieu = virgule géorgienne = point du milieu grec
{"cedil", "184"}, // cédille = espacement cédille
{"sup1", "185"}, // exposant un = chiffre un en exposant
{"ordm", "186"}, // indicateur ordinal masculin
{"raquo", "187"}, // guillemet double angle pointant vers la droite = guillemet pointant vers la droite
{"frac14", "188"}, // fraction vulgaire un quart = fraction un quart
{"frac12", "189"}, // fraction vulgaire un demi = fraction un demi
{"frac34", "190"}, // fraction vulgaire trois quarts = fraction trois quarts
{" iquest", "191"}, // point d'interrogation inversé = point d'interrogation transformé
{"Agrave", "192"}, // � - A majuscule, accent grave
{"Aacute", "193" }, // � - A majuscule, accent aigu
{"Acirc", "194"}, // � - A majuscule, accent circonflexe
{"Atilde", "195"}, // � - majuscule A, tilde
{"Auml", "196"}, // � - majuscule A, tréma
{"Aring", "197"}, // � - majuscule A, anneau
{ "AElig", "198"}, // � - majuscule AE
{"Ccedil", "199"}, // � - majuscule C, cédille
{"Egrave", "200"}, / / � - E majuscule, accent grave
{"Eacute", "201"}, // � - E majuscule, accent aigu
{"Ecirc", "202"}, // � - E majuscule, accent circonflexe
{"Euml", "203"}, // � - E majuscule, tréma
{"Igrave", "204"}, // � - I majuscule, accent grave
{" Iacute", "205"}, // � - I majuscule, accent aigu
{"Icirc", "206"}, // � - I majuscule, accent circonflexe
{"Iuml", "207" }, // � - I majuscule, tréma
{"ETH", "208"}, // � - Eth majuscule, islandais
{"Ntilde", "209"}, // � - N majuscule , tilde
{"Ograve", "210"}, // � - O majuscule, accent grave
{"Oacute", "211"}, // � - O majuscule, accent aigu
{ "Ocirc", "212"}, // � - O majuscule, accent circonflexe
{"Otilde", "213"}, // � - O majuscule, tilde
{"Ouml", "214" }, // � - O majuscule, tréma
{"times", "215"}, // signe de multiplication
{"Oslash", "216"}, // � - O majuscule, barre oblique
{"Ugrave", "217"}, // � - U majuscule, accent grave
{"Uacute", "218"}, // � - U majuscule, accent aigu
{"Ucirc", "219"}, // � - U majuscule, accent circonflexe
{"Uuml", "220"}, // � - U majuscule, tréma
{"Yacute", "221"}, // � - Y majuscule, accent aigu
{"THORN", "222"}, // � - THORN majuscule, islandais
{"szlig", "223"}, // � - dièses minuscules, allemand
{"agrave", "224"}, // � - a minuscule, accent grave
{"aacute", "225"}, // � - a minuscule, accent aigu
{"acirc" , "226"}, // � - a minuscule, accent circonflexe
{"atilde", "227"}, // � - a minuscule, tilde
{"auml", "228"}, / / � - a minuscule, tréma
{"aring", "229"}, // � - a minuscule, anneau
{"aelig", "230"}, // � - ae minuscule
{"ccedil", "231"}, // � - c minuscule, cédille
{"egrave", "232"}, // � - e minuscule, accent grave
{"eacute", "233 "}, // � - e minuscule, accent aigu
{"ecirc", "234"}, // � - e minuscule, accent circonflexe
{"euml", "235"}, // � - e minuscule, tréma
{"igrave", "236"}, // � - i minuscule, accent grave
{"iacute", "237"}, // � - i minuscule, accent aigu
{"icir", "238"}, // � - i minuscule, accent circonflexe
{"iuml", "239"}, // � - i minuscule, tréma
{"eth", "240"}, // � - eth minuscule, islandais
{"ntilde", "241"}, // � - n minuscule, tilde
{"ograve", "242" }, // � - o minuscule, accent grave
{"oacute", "243"}, // � - o minuscule, accent aigu
{"ocirc", "244"}, // � - o minuscule, accent circonflexe
{"otilde", "245"}, // � - o minuscule, tilde
{"ouml", "246"}, // � - o minuscule, tréma
{"divide", "247"}, // signe de division
{"oslash", "248"}, // � - o minuscule, barre oblique
{"ugrave", "249"}, // � - u minuscule, accent grave
{"uacute", "250"}, // � - u minuscule, accent aigu
{"ucirc", "251"}, // � - u minuscule, circonflexe accent
{"uuml", "252"}, // � - u minuscule, tréma
{"yacute", "253"}, // � - y minuscule, accent aigu
{"thorn ", "254"}, // � - épine minuscule, islandais
{"yuml", "255"}, // � - y minuscule, tréma
} ;

HTML40_ARRAY

复制代码
代码如下 :

String final statique[][] HTML40_ARRAY = {
//
{"fnof", "402"}, // petit f latin avec crochet = fonction= florin, U 0192 ISOtech -->
//
{"Alpha", "913"}, // lettre majuscule grecque alpha, U 0391 --->
{"Beta", "914"}, // lettre majuscule grecque bêta, U 0392 --->
{"Gamma", "915"}, // lettre majuscule grecque gamma,U 0393 ISOgrk3 -->
{"Delta", "916"}, // lettre majuscule grecque delta,U 0394 ISOgrk3 -->
{"Epsilon", "917"}, // lettre majuscule grecque epsilon, U 0395 -->
{"Zeta", "918"}, // lettre majuscule grecque zêta, U 0396 --->
{"Eta", "919"}, // lettre majuscule grecque eta, U 0397 --->
{"Theta", "920"}, // lettre majuscule grecque theta,U 0398 ISOgrk3 -->
{"Iota", "921"}, // lettre majuscule grecque iota, U 0399 --->
{"Kappa", "922"}, // lettre majuscule grecque kappa, U 039A --->
{"Lambda", "923"}, // lettre majuscule grecque lambda,U 039B ISOgrk3 -->
{"Mu", "924"}, // lettre majuscule grecque mu, U 039C --->
{"Nu", "925"}, // lettre majuscule grecque nu, U 039D --->
{"Xi", "926"}, // lettre majuscule grecque xi, U 039E ISOgrk3 -->
{"Omicron", "927"}, // lettre majuscule grecque omicron, U 039F --->
{"Pi", "928"}, // lettre majuscule grecque pi, U 03A0 ISOgrk3 -->
{"Rho", "929"}, // lettre majuscule grecque rho, U 03A1 --->
//
{"Sigma", "931"}, // lettre majuscule grecque sigma,U 03A3 ISOgrk3 -->
{"Tau", "932"}, // lettre majuscule grecque tau, U 03A4 --->
{"Upsilon", "933"}, // lettre majuscule grecque upsilon,U 03A5 ISOgrk3 -->
{"Phi", "934"}, // lettre majuscule grecque phi,U 03A6 ISOgrk3 -->
{"Chi", "935"}, // lettre majuscule grecque chi, U 03A7 --->
{"Psi", "936"}, // lettre majuscule grecque psi,U 03A8 ISOgrk3 -->
{"Omega", "937"}, // lettre majuscule grecque oméga,U 03A9 ISOgrk3 -->
{"alpha", "945"}, // lettre minuscule grecque alpha,U 03B1 ISOgrk3 -->
{"beta", "946"}, // lettre minuscule grecque bêta, U 03B2 ISOgrk3 -->
{"gamma", "947"}, // lettre minuscule grecque gamma,U 03B3 ISOgrk3 -->
{"delta", "948"}, // lettre minuscule grecque delta,U 03B4 ISOgrk3 -->
{"epsilon", "949"}, // lettre minuscule grecque epsilon,U 03B5 ISOgrk3 -->
{"zeta", "950"}, // lettre minuscule grecque zeta, U 03B6 ISOgrk3 -->
{"eta", "951"}, // lettre minuscule grecque eta, U 03B7 ISOgrk3 -->
{"theta", "952"}, // lettre minuscule grecque thêta,U 03B8 ISOgrk3 -->
{"iota", "953"}, // lettre minuscule grecque iota, U 03B9 ISOgrk3 -->
{"kappa", "954"}, // lettre minuscule grecque kappa,U 03BA ISOgrk3 -->
{"lambda", "955"}, // lettre minuscule grecque lambda,U 03BB ISOgrk3 -->
{"mu", "956"}, // lettre minuscule grecque mu, U 03BC ISOgrk3 -->
{"nu", "957"}, // lettre minuscule grecque nu, U 03BD ISOgrk3 -->
{"xi", "958"}, // lettre minuscule grecque xi, U 03BE ISOgrk3 -->
{"omicron", "959"}, // lettre minuscule grecque omicron, U 03BF NEW -->
{"pi", "960"}, // lettre minuscule grecque pi, U 03C0 ISOgrk3 -->
{"rho", "961"}, // lettre minuscule grecque rho, U 03C1 ISOgrk3 -->
{"sigmaf", "962"}, // lettre minuscule grecque finale sigma,U 03C2 ISOgrk3 -->
{"sigma", "963"}, // lettre minuscule grecque sigma,U 03C3 ISOgrk3 -->
{"tau", "964"}, // lettre minuscule grecque tau, U 03C4 ISOgrk3 -->
{"upsilon", "965"}, // lettre minuscule grecque upsilon,U 03C5 ISOgrk3 -->
{"phi", "966"}, // lettre minuscule grecque phi, U 03C6 ISOgrk3 -->
{"chi", "967"}, // lettre minuscule grecque chi, U 03C7 ISOgrk3 -->
{"psi", "968"}, // lettre minuscule grecque psi, U 03C8 ISOgrk3 -->
{"omega", "969"}, // lettre minuscule grecque oméga,U 03C9 ISOgrk3 -->
{"thetasym", "977"}, // lettre minuscule grecque symbole thêta, U 03D1 NEW -->
{"upsih", "978"}, // upsilon grec avec symbole de crochet,U 03D2 NEW -->
{"piv", "982"}, // symbole grec pi, U 03D6 ISOgrk3 -->
//
{"bull", "8226"}, // puce = petit cercle noir,U 2022 ISOpub --->
//
{"hellip", "8230"}, // points de suspension horizontaux = leader à trois points,U 2026 ISOpub -->
{"prime", "8242"}, // prime = minutes = pieds, U 2032 ISOtech -->
{"Prime", "8243"}, // double prime = secondes = pouces,U 2033 ISOtech -->
{"oline", "8254"}, // overline = espacement overscore,U 203E NEW -->
{"frasl", "8260"}, // fraction barre oblique, U 2044 NOUVEAU ---->
//
{"weierp", "8472"}, // script majuscule P = power set= Weierstrass p, U 2118 ISOamso -->
{"image", "8465"}, // lettre noire majuscule I = partie imaginaire,U 2111 ISOamso -->
{"real", "8476"}, // lettre noire majuscule R = symbole de pièce réelle, U 211C ISOamso -->
{"trade", "8482"}, // signe de marque, U 2122 ISOnum --->
{"alefsym", "8501"}, // symbole alef = premier cardinal transfini,U 2135 NOUVEAU -->
//
//
{"larr", "8592"}, // flèche vers la gauche, U 2190 ISOnum -->
{"uarr", "8593"}, // flèche vers le haut, U 2191 ISOnum-->
{"rarr", "8594"}, // flèche vers la droite, U 2192 ISOnum -->
{"darr", "8595"}, // flèche vers le bas, U 2193 ISOnum -->
{"harr", "8596"}, // flèche gauche droite, U 2194 ISOamsa -->
{"crar", "8629"}, // flèche vers le bas avec coin vers la gauche = retour chariot, U 21B5 NEW -->
{"lArr", "8656"}, // double flèche vers la gauche, U 21D0 ISOtech -->
//
{"uArr", "8657"}, // double flèche vers le haut, U 21D1 ISOamsa -->
{"rArr", "8658"}, // double flèche vers la droite,U 21D2 ISOtech -->
//
{"dArr", "8659"}, // double flèche vers le bas, U 21D3 ISOamsa -->
{"hArr", "8660"}, // double flèche gauche droite,U 21D4 ISOamsa -->
//
{"forall", "8704"}, // pour tous, U 2200 ISOtech --->
{"part", "8706"}, // différentiel partiel, U 2202 ISOtech --->
{"exist", "8707"}, // il existe, U 2203 ISOtech --->
{"empty", "8709"}, // ensemble vide = ensemble nul = diamètre, U 2205 ISOamso -->
{"nabla", "8711"}, // nabla = différence vers l'arrière,U 2207 ISOtech --->
{"isin", "8712"}, // élément de, U 2208 ISOtech --->
{"notin", "8713"}, // pas un élément de, U 2209 ISOtech -->
{"ni", "8715"}, // contient comme membre, U 220B ISOtech --->
//
{"prod", "8719"}, // produit n-aire = signe du produit,U 220F ISOamsb -->
//
{"sum", "8721"}, // sommation n-aire, U 2211 ISOamsb -->
//
{"moins", "8722"}, // signe moins, U 2212 ISOtech --->
{"lowast", "8727"}, // opérateur astérisque, U 2217 ISOtech --->
{"radic", "8730"}, // racine carrée = signe radical,U 221A ISOtech -->
{"prop", "8733"}, // proportionnel à, U 221D ISOtech --->
{"infin", "8734"}, // infini, U 221E ISOtech --->
{"ang", "8736"}, // angle, U 2220 ISOamso -->
{"et", "8743"}, // et logique = coin, U 2227 ISOtech -->
{"ou", "8744"}, // ou logique = vee, U 2228 ISOtech -->
{"cap", "8745"}, // intersection = cap, U 2229 ISOtech --->
{"cup", "8746"}, // union = cup, U 222A ISOtech --->
{"int", "8747"}, // intégrale, U 222B ISOtech --->
{"there4", "8756"}, // donc, U 2234 ISOtech --->
{"sim", "8764"}, // opérateur tilde = varie avec = similaire à,U 223C ISOtech -->
//
{"cong", "8773"}, // approximativement égal à, U 2245 ISOtech --->
{"asymp", "8776"}, // presque égal à = asymptotique à,U 2248 ISOamsr -->
{"ne", "8800"}, // différent de, U 2260 ISOtech --->
{"equiv", "8801"}, // identique à, U 2261 ISOtech --->
{"le", "8804"}, // inférieur ou égal à, U 2264 ISOtech -->
{"ge", "8805"}, // supérieur ou égal à,U 2265 ISOtech -->
{"sub", "8834"}, // sous-ensemble de, U 2282 ISOtech --->
{"sup", "8835"}, // sur-ensemble de, U 2283 ISOtech --->
// // pas un sous-ensemble de, U 2284 ISOamsn -->
{"sube", "8838"}, // sous-ensemble de ou égal à, U 2286 ISOtech -->
{"supe", "8839"}, // surensemble de ou égal à,U 2287 ISOtech -->
{"oplus", "8853"}, // plus encerclé = somme directe,U 2295 ISOamsb -->
{"otimes", "8855"}, // temps encerclés = produit vectoriel,U 2297 ISOamsb -->
{"perp", " 8869"}, // up tack = orthogonal à = perpendiculaire,U 22A5 ISOtech -->
{"sdot", "8901"}, // opérateur point, U 22C5 ISOamsb -->
/ /
// , // plafond gauche = apl upstile,U 2308 ISOamsc -->
{"rceil", "8969"}, // plafond droit, U 2309 ISOamsc -->
{"lfloor", " 8970"}, // étage gauche = apl bas,U 230A ISOamsc -->
{"rfloor", "8971"}, // étage droit, U 230B ISOamsc -->
{"lang ", "9001"}, // crochet angulaire pointant vers la gauche = bra,U 2329 ISOtech -->
//
{"rang", "9002"}, // équerre pointant vers la droite = ket,U 232A ISOtech -->
//
//
{"loz", "9674"}, // pastille, U 25CA ISOpub --->
//
{"spades", "9824"}, // combinaison de pique noire, U 2660 ISOpub --->
//
{"clubs", "9827"}, // costume club noir = trèfle,U 2663 ISOpub -->
{"hearts", "9829"}, // costume coeur noir = valentine,U 2665 ISOpub --->
{"diams", "9830"}, // costume diamant noir, U 2666 ISOpub --->
//
{"OElig", "338"}, // -- ligature majuscule latine OE,U 0152 ISOlat2 -->
{"oelig", "339"}, // -- petite ligature latine oe, U 0153 ISOlat2 -->
//
{"Scaron", "352"}, // -- lettre majuscule latine S avec caron,U 0160 ISOlat2 -->
{"scaron", "353"}, // -- lettre minuscule latine s avec caron,U 0161 ISOlat2 -->
{"Yuml", "376"}, // -- lettre majuscule latine Y avec tréma,U 0178 ISOlat2 -->
//
{"circ", "710"}, // -- lettre modificatrice accent circonflexe,U 02C6 ISOpub -->
{"tilde", "732"}, // petit tilde, U 02DC ISOdia -->
//
{"ensp", "8194"}, // en espace, U 2002 ISOpub --->
{"emsp", "8195"}, // espace em, U 2003 ISOpub --->
{"thinsp", "8201"}, // espace mince, U 2009 ISOpub --->
{"zwnj", "8204"}, // non-menuisier de largeur nulle, U 200C NEW RFC 2070 --->
{"zwj", "8205"}, // Menuisier de largeur nulle, U 200D NEW RFC 2070 --->
{"lrm", "8206"}, // marque de gauche à droite, U 200E NEW RFC 2070 --->
{"rlm", "8207"}, // marque de droite à gauche, U 200F NEW RFC 2070 --->
{"ndash", "8211"}, // en tiret, U 2013 ISOpub --->
{"mdash", "8212"}, // em tiret, U 2014 ISOpub --->
{"lsquo", "8216"}, // guillemet simple gauche,U 2018 ISOnum -->
{"rsquo", "8217"}, // guillemet simple droit,U 2019 ISOnum -->
{"sbquo", "8218"}, // guillemet simple bas-9, U 201A NEW -->
{"ldquo", "8220"}, // guillemet double gauche,U 201C ISOnum -->
{"rdquo", "8221"}, // guillemet double droit,U 201D ISOnum -->
{"bdquo", "8222"}, // guillemets doubles bas-9, U 201E NEW -->
{"dague", "8224"}, // dague, U 2020 ISOpub --->
{"Dagger", "8225"}, // double dague, U 2021 ISOpub --->
{"permil", "8240"}, // signe pour mille, U 2030 ISOtech --->
{"lsaquo", "8249"}, // guillemet unique pointant vers la gauche, U 2039 ISO proposé -->
//
{"rsaquo", "8250"}, // guillemet simple à angle droit, U 203A ISO proposé -->
//
{"euro", "8364"}, // -- signe euro, U 20AC NOUVEAU --->
} ;


Développez-le davantage

Comme vous pouvez le voir de face, le nombre au milieu du caractère d'échappement est unicode. Ensuite, ce caractère de transfert peut être construit de manière désinvolte et ne se limite pas à la définition ci-dessus. Par exemple, l'unicode est 20013 , puis construisez un caractère de transfert & #20013;, et il reviendra au centre après avoir été rendu par le navigateur. Bien qu'il ne soit pas nécessaire d'afficher un caractère comme celui-ci, il peut s'avérer utile dans. certains scénarios où il n'est pas pratique de transmettre des caractères spéciaux
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn