>웹 프론트엔드 >HTML 튜토리얼 >code_HTML/Xhtml_웹페이지 제작을 통해 html 이스케이프 문자를 식별하는 방법에 대해 이야기해 보세요.

code_HTML/Xhtml_웹페이지 제작을 통해 html 이스케이프 문자를 식별하는 방법에 대해 이야기해 보세요.

WBOY
WBOY원래의
2016-05-16 16:39:171981검색

가끔 데이터에 ' 등의 문자가 나오는 것을 볼 수 있습니다. 그 특징은 다음과 같습니다

으로 시작하고 중간에 숫자가 나열되어 있습니다.
&로 시작하고 중간에

로 끝나는 문자열(예: 가장 일반적인  >
) 문자를 다시 이스케이프 처리하지만 코드를 어떻게 전달합니까? org.apache.commons.lang.StringEscapeUtils.unescapeHtml이 좋은 설명을 제공합니다

위의 첫 번째 상황에 직면하면 가운데가 숫자이고 숫자(유니코드)를 문자로 직접 변환합니다
두 번째 경우 , 중간에 문자가 있습니다. 매핑 테이블에서 해당 문자에 해당하는 숫자를 찾아 char로 변환해 보면 알 수 있습니다.

HTML40이 어떻게 정의하는지 살펴보세요


코드 복사코드는 다음과 같습니다.
static {
HTML40 = new Entities();
fillWithHtml40Entities(HTML40);
}
static void fillWithHtml40Entities(Entities 엔터티) {
entities.addEntities(BASIC_ARRAY); 엔터티.addEntities(ISO8859_1_ARRAY);
entities.addEntities( HTML40_ARRAY);
}


BASIC_ARRAY, ISO8859_1_ARRAY 및 HTML40_ARRAY가 각각

BASIC_ARRAY



코드 복사코드는 다음과 같습니다.
private static final String[][] BASIC_ARRAY = {{"quot", "34"}, // " - 큰따옴표
{"amp", "38"}, // & - 앰퍼샌드
{"lt", "60"}, // < - 미만
{"gt", "62"}, // > - 초과


ISO8859_1_ARRAY



코드 복사
코드는 다음과 같습니다.

static final String[][] ISO8859_1_ARRAY = {{"nbsp", "160"}, // 줄바꿈하지 않는 공백
{"iexcl", "161"}, // 느낌표 반전
{"cent", "162"}, // 센트 기호
{"pound", "163"}, // 파운드 기호
{"curren", "164"}, // 통화 기호
{"yen", "165"}, // 엔 기호 = 위안 기호
{"brvbar", "166"}, // 깨진 막대 = 깨진 수직 막대
{"sect", "167"}, // 섹션 기호
{"uml", "168"}, // 분음 기호 = 간격 분음 기호
{"copy", "169"}, // � - 저작권 기호
{"ordf", "170"}, // 여성 서수 표시
{"laquo", "171"}, // 왼쪽을 가리키는 이중 각따옴표 = 왼쪽을 가리키는 길레메
{"not", " 172"}, // 기호 없음
{"shy", "173"}, // 소프트 하이픈 = 임의 하이픈
{"reg", "174"}, // � - 등록 상표 기호
{"macr", "175"}, // 마크론 = 간격 마크론 = overline = APL 오버바
{"deg", "176"}, // 도 기호
{"plusmn", "177" }, // 더하기-빼기 기호 = 더하기 또는 빼기 기호
{"sup2", "178"}, // 위 첨자 2 = 위 첨자 숫자 2 = 제곱
{"sup3", "179"} , // 위 첨자 3 = 위 첨자 숫자 3 = 세제곱
{"acute", "180"}, // 예음 악센트 = 공백 예음
{"micro", "181"}, // 마이크로 기호
{"para", "182"}, // 필크로 기호 = 단락 기호
{"middot", "183"}, // 중간 점 = 조지아어 쉼표 = 그리스어 중간 점
{"cedil", "184"}, // cedilla = 간격 cedilla
{"sup1", "185"}, // 위 첨자 1 = 위 첨자 숫자 1
{"ordm", "186"}, // 남성 서수 표시기
{"raquo", "187"}, // 오른쪽을 가리키는 이중 각따옴표 = 오른쪽을 가리키는 길레메
{"frac14", "188"}, // 저속한 분수 1/4 = 분수 1/4
{"frac12", "189"}, // 저속한 분수 1/2 = 분수 1/2
{"frac34", "190"}, // 저속한 분수 3/4 = 분수 3/4
{" 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, cedilla
{"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, ring
{"aelig", "230"}, // � - 소문자 ae
{"ccedil", "231"}, // � - 소문자 c, cedilla
{"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_ARRAY

复代码码
代码如下:

static final String[][] HTML40_ARRAY = {
//
{"fnof", "402"}, // 후크가 있는 라틴 소문자 f = function= florin, U 0192 ISOtech -->
//
{"Alpha", "913"}, // 그리스어 대문자 알파, U 0391 -->
{"Beta", "914"}, // 그리스어 대문자 베타, U 0392 -->
{"Gamma", "915"}, // 그리스어 대문자 gamma,U 0393 ISOgrk3 -->
{"Delta", "916"}, // 그리스 대문자 delta,U 0394 ISOgrk3 -->
{"Epsilon", "917"}, // 그리스어 대문자 엡실론, U 0395 -->
{"Zeta", "918"}, // 그리스 대문자 zeta, U 0396 -->
{"Eta", "919"}, // 그리스 대문자 eta, U 0397 -->
{"Theta", "920"}, // 그리스 대문자 theta,U 0398 ISOgrk3 -->
{"Iota", "921"}, // 그리스 대문자 iota, 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 -->
{"Omicron", "927"}, // 그리스 대문자 omicron, U 039F -->
{"Pi", "928"}, // 그리스 대문자 pi, U 03A0 ISOgrk3 -->
{"Rho", "929"}, // 그리스 대문자 rho, U 03A1 -->
//
{"Sigma", "931"}, // 그리스 대문자 sigma,U 03A3 ISOgrk3 -->
{"Tau", "932"}, // 그리스 대문자 tau, U 03A4 -->
{"Upsilon", "933"}, // 그리스어 대문자 upsilon,U 03A5 ISOgrk3 -->
{"Phi", "934"}, // 그리스 대문자 phi,U 03A6 ISOgrk3 -->
{"Chi", "935"}, // 그리스 대문자 chi, U 03A7 -->
{"Psi", "936"}, // 그리스 대문자 psi,U 03A8 ISOgrk3 -->
{"Omega", "937"}, // 그리스 대문자 omega,U 03A9 ISOgrk3 -->
{"alpha", "945"}, // 그리스어 소문자 alpha,U 03B1 ISOgrk3 -->
{"beta", "946"}, // 그리스어 소문자 베타, U 03B2 ISOgrk3 -->
{"gamma", "947"}, // 그리스어 소문자 gamma,U 03B3 ISOgrk3 -->
{"delta", "948"}, // 그리스어 소문자 delta,U 03B4 ISOgrk3 -->
{"epsilon", "949"}, // 그리스어 소문자 엡실론,U 03B5 ISOgrk3 -->
{"zeta", "950"}, // 그리스 소문자 zeta, U 03B6 ISOgrk3 -->
{"eta", "951"}, // 그리스어 소문자 eta, U 03B7 ISOgrk3 -->
{"theta", "952"}, // 그리스 소문자 theta,U 03B8 ISOgrk3 -->
{"iota", "953"}, // 그리스어 소문자 iota, 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"}, // 그리스어 소문자 omicron, U 03BF NEW -->
{"pi", "960"}, // 그리스어 소문자 pi, U 03C0 ISOgrk3 -->
{"rho", "961"}, // 그리스어 소문자 rho, U 03C1 ISOgrk3 -->
{"sigmaf", "962"}, // 그리스어 소문자 최종 시그마,U 03C2 ISOgrk3 -->
{"sigma", "963"}, // 그리스어 소문자 sigma,U 03C3 ISOgrk3 -->
{"tau", "964"}, // 그리스 소문자 tau, U 03C4 ISOgrk3 -->
{"upsilon", "965"}, // 그리스어 소문자 upsilon,U 03C5 ISOgrk3 -->
{"phi", "966"}, // 그리스어 소문자 phi, U 03C6 ISOgrk3 -->
{"chi", "967"}, // 그리스어 소문자 chi, U 03C7 ISOgrk3 -->
{"psi", "968"}, // 그리스어 소문자 psi, U 03C8 ISOgrk3 -->
{"omega", "969"}, // 그리스어 소문자 omega,U 03C9 ISOgrk3 -->
{"thetasym", "977"}, // 그리스 소문자 세타 기호,U 03D1 NEW -->
{"upsih", "978"}, // 후크 기호가 있는 그리스어 입실론,U 03D2 NEW -->
{"piv", "982"}, // 그리스 파이 기호, U 03D6 ISOgrk3 -->
//
{"bull", "8226"}, // 글머리 기호 = 검은색 작은 원,U 2022 ISOpub -->
//
{"hellip", "8230"}, // 가로 줄임표 = 세 개의 점 리더,U 2026 ISOpub -->
{"프라임", "8242"}, // 프라임 = 분 = 피트, U 2032 ISOtech -->
{"프라임", "8243"}, // 이중 소수 = 초 = 인치,U 2033 ISOtech -->
{"oline", "8254"}, // 윗줄 = 간격 오버스코어,U 203E NEW -->
{"frasl", "8260"}, // 분수 슬래시, U 2044 NEW -->
//
{"weierp", "8472"}, // 스크립트 대문자 P = power set= 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 -->
//
//
{"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 -->
//
{"uArr", "8657"}, // 위쪽 이중 화살표, U 21D1 ISOamsa -->
{"rArr", "8658"}, // 오른쪽 이중 화살표,U 21D2 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 포함 -->
//
{"prod", "8719"}, // n항 제품 = 제품 기호,U 220F ISOamsb -->
//
{"sum", "8721"}, // n항 합계, U 2211 ISOamsb -->
//
{"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"}, // 논리 and = 쐐기, U 2227 ISOtech -->
{"or", "8744"}, // 논리적 or = vee, U 2228 ISOtech -->
{"cap", "8745"}, // 교차점 = cap, U 2229 ISOtech -->
{"컵", "8746"}, // 결합 = 컵, U 222A ISOtech -->
{"int", "8747"}, // 적분, U 222B ISOtech -->
{"there4", "8756"}, // 따라서 U 2234 ISOtech -->
{"sim", "8764"}, // 물결표 연산자 = 다양함 = U 223C ISOtech와 유사 -->
//
{"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의 상위 집합 -->
// // 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 -->
/ /
// , // 왼쪽 천장 = 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 -->
//
{"rang", "9002"}, // 오른쪽을 가리키는 꺾쇠괄호 = ket,U 232A ISOtech -->
//
//
{"loz", "9674"}, // 마름모꼴, U 25CA ISOpub -->
//
{"spades", "9824"}, // 검은색 스페이드 슈트, U 2660 ISOpub -->
//
{"clubs", "9827"}, // 검은색 클럽 슈트 = shamrock,U 2663 ISOpub -->
{"hearts", "9829"}, // 블랙 하트 슈트 = Valentine,U 2665 ISOpub -->
{"diams", "9830"}, // 블랙 다이아몬드 슈트, U 2666 ISOpub -->
//
{"OElig", "338"}, // -- 라틴 대문자 합자 OE,U 0152 ISOlat2 -->
{"oelig", "339"}, // -- 라틴 소합자 oe, U 0153 ISOlat2 -->
//
{"Scaron", "352"}, // -- caron이 포함된 라틴어 대문자 S,U 0160 ISOlat2 -->
{"scaron", "353"}, // -- caron이 포함된 라틴 소문자 s,U 0161 ISOlat2 -->
{"Yuml", "376"}, // -- 분음 기호가 있는 라틴어 대문자 Y,U 0178 ISOlat2 -->
//
{"circ", "710"}, // -- 수식어 곡절 악센트,U 02C6 ISOpub -->
{"tilde", "732"}, // 작은 물결표, U 02DC ISOdia -->
//
{"ensp", "8194"}, // 공간, U 2002 ISOpub -->
{"emsp", "8195"}, // em 공간, U 2003 ISOpub -->
{"thinsp", "8201"}, // 얇은 공간, U 2009 ISOpub -->
{"zwnj", "8204"}, // 너비가 0인 non-joiner,U 200C NEW RFC 2070 -->
{"zwj", "8205"}, // 너비가 0인 조이너, 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 제안 -->
//
{"rsaquo", "8250"}, // 단일 오른쪽 각도 인용 부호,U 203A ISO 제안 -->
//
{"euro", "8364"}, // -- 유로 기호, U 20AC NEW -->
};


더 확장하세요

앞에서 보면 이스케이프 문자 중간에 있는 숫자가 유니코드입니다. 그러면 이 전송 문자는 위의 정의에 국한되지 않고 자연스럽게 구성될 수 있습니다. 예를 들어, 의 유니코드는 20013이고 전송 문자를 구성하면 브라우저에서 렌더링된 후 다시 중앙으로 변환됩니다. 이와 같은 문자를 표시할 필요는 없지만 유용할 수 있습니다. 특수문자 전송이 불편한 일부 상황에서
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.