{"id":122370,"date":"2026-11-04T20:18:10","date_gmt":"2026-11-04T12:18:10","guid":{"rendered":"https:\/\/www.wsisp.com\/helps\/122370.html"},"modified":"2026-11-04T20:18:10","modified_gmt":"2026-11-04T12:18:10","slug":"strase-%e5%92%8c-strasse-%e5%88%b0%e5%ba%95%e7%ae%97%e4%b8%8d%e7%ae%97%e5%90%8c%e4%b8%80%e5%ae%b6%ef%bc%9a14-%e8%a1%8c%e5%90%8d%e5%8d%95%e5%9c%a8-5-%e7%a7%8d%e3%80%8c%e5%bf%bd%e7%95%a5%e5%a4%a7","status":"publish","type":"post","link":"https:\/\/www.wsisp.com\/helps\/122370.html","title":{"rendered":"Stra\u00dfe \u548c Strasse \u5230\u5e95\u7b97\u4e0d\u7b97\u540c\u4e00\u5bb6\uff1a14 \u884c\u540d\u5355\u5728 5 \u79cd\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u53e3\u5f84\u4e0b\u7684\u91cd\u590d\u6570"},"content":{"rendered":"<p>        \/* MD \/ \u5bcc\u6587\u672c\u4e2d\u7684 .toc\uff08\u542b\u535a\u5ba2\u56ed\u642c\u5bb6\u7b49\u5d4c\u5957\u7ed3\u6784\uff09\uff1b.toc-box \u5728\u4fa7\u680f\uff0c\u4e0d\u53d7\u5f71\u54cd *\/<br \/>\n        #content_views .toc,<br \/>\n        \/* \u7f16\u8f91\u5668\u5e38\u5728\u76ee\u5f55\u524d\u540e\u63d2\u5165\u7a7a p\uff08:empty \u4ecd\u5360 20px\uff09\uff0c\u4e00\u5e76\u53bb\u6389\u907f\u514d\u9876\u7a7a\u9699 *\/<br \/>\n        #content_views.markdown_views &gt; p:empty:has(+ .toc),<br \/>\n        #content_views.markdown_views &gt; .toc + p:empty,<br \/>\n        \/* \u5bcc\u6587\u672c\u65e7\u7248\u76ee\u5f55\u6807\u8bb0 *\/<br \/>\n        #content_views.htmledit_views #main-toc,<br \/>\n        #content_views.htmledit_views #hr-toc,<br \/>\n        #content_views.htmledit_views p[id*=\\&#8221;-toc\\&#8221;] {<br \/>\n          display: none !important;<br \/>\n        }<br \/>\n        \/* \u76ee\u5f55\u53bb\u6389\u540e\uff0c\u7d27\u8ddf\u7684\u9996\u4e2a\u6807\u9898\u4e0d\u518d\u591a\u51fa\u4e00\u5757\u4e0a\u8fb9\u8ddd *\/<br \/>\n        #content_views.markdown_views &gt; .toc + h1,<br \/>\n        #content_views.markdown_views &gt; .toc + h2,<br \/>\n        #content_views.markdown_views &gt; .toc + h3,<br \/>\n        #content_views.markdown_views &gt; .toc + h4,<br \/>\n        #content_views.markdown_views &gt; .toc + p:empty + h1,<br \/>\n        #content_views.markdown_views &gt; .toc + p:empty + h2,<br \/>\n        #content_views.markdown_views &gt; .toc + p:empty + h3,<br \/>\n        #content_views.markdown_views &gt; .toc + p:empty + h4 {<br \/>\n          margin-top: 0 !important;<br \/>\n        }<\/p>\n<p>\u4e8b\u60c5\u8d77\u56e0\u5f88\u666e\u901a&#xff1a;\u4e00\u4efd\u591a\u8bed\u8a00\u4f9b\u5e94\u5546\u540d\u5355\u8981\u5408\u5e76\u53bb\u91cd&#xff0c;\u518d\u7edf\u4e00\u6210 Title Case \u663e\u793a\u5728\u540e\u53f0\u4e0b\u62c9\u6846\u91cc\u3002\u540d\u5355\u4e0d\u5927&#xff0c;14 \u884c&#xff0c;\u5fb7\u6587\u3001\u571f\u8033\u5176\u6587\u3001\u5e0c\u814a\u6587\u3001\u8fde\u5b57\u5404\u6709\u4e00\u70b9\u3002\u7b2c\u4e00\u7248\u4ee3\u7801\u53ea\u6709\u4e00\u884c\u2014\u2014new Set(rows.map(s &#061;&gt; s.toLowerCase()))&#xff0c;\u8dd1\u51fa\u6765\u662f 9 \u6761&#xff1b;\u6709\u4eba\u89c9\u5f97\u592a\u591a&#xff0c;\u6539\u6210 toUpperCase()&#xff0c;\u53d8\u6210 5 \u6761&#xff1b;\u6362\u6210 Intl.Collator \u505a\u6bd4\u8f83&#xff0c;7 \u6761&#xff1b;\u4ec0\u4e48\u90fd\u4e0d\u505a\u7684\u539f\u6837\u53bb\u91cd&#xff0c;14 \u6761\u3002<\/p>\n<p>\u540c\u4e00\u4efd\u8f93\u5165\u3001\u540c\u4e00\u4e2a\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u7684\u8bf4\u6cd5&#xff0c;\u4e94\u79cd\u5b9e\u73b0\u7ed9\u51fa\u56db\u4e2a\u4e0d\u540c\u7684\u7b54\u6848&#xff0c;\u800c\u4e14\u6ca1\u6709\u4e00\u79cd\u62a5\u9519\u3002\u8fd9\u4e0d\u662f\u5b9e\u73b0\u8d28\u91cf\u5dee\u522b&#xff0c;\u800c\u662f\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u8fd9\u56db\u4e2a\u5b57\u5728 Unicode \u91cc\u672c\u6765\u5c31\u4e0d\u662f\u4e00\u4ef6\u4e8b&#xff1a;<\/p>\n<ul>\n<li>\u5927\u5c0f\u5199\u6620\u5c04\u4e0d\u662f 1:1&#xff1a;32 \u4e2a\u6837\u672c\u91cc 7 \u4e2a \u8f6c\u6362\u540e\u7801\u5143\u6570\u4f1a\u53d8&#xff0c;\u00df 1\u21922\u3001\ufb03 1\u21923\u3001\u0130 \u5c0f\u5199\u5316 1\u21922&#xff1b;<\/li>\n<li>\u6620\u5c04\u8fd8\u4f9d\u8d56\u4f4d\u7f6e&#xff1a;\u5e0c\u814a\u6587\u8bcd\u5c3e sigma \u4f1a\u8ba9\u540c\u4e00\u4e2a\u5927\u5199\u5b57\u6bcd \u03a3 \u5728\u8bcd\u4e2d\u843d\u6210 \u03c3\u3001\u5728\u8bcd\u5c3e\u843d\u6210 \u03c2&#xff1b;<\/li>\n<li>\u6620\u5c04\u4f9d\u8d56 locale&#xff1a;&#039;I&#039;.toLocaleLowerCase(&#039;tr&#039;) \u5f97\u5230\u7684\u662f \u0131&#xff0c;\u4e0d\u662f i&#xff1b;<\/li>\n<li>\u6620\u5c04\u5bf9\u8868\u5916\u7684\u5b57\u7b26\u76f4\u63a5\u4e0d\u5b58\u5728&#xff1a;34 \u4e2a\u6837\u672c\u91cc 6 \u4e2a \u5927\u5c0f\u5199\u53cc\u5411\u90fd\u4e0d\u53d8&#xff0c;\u975e BMP \u5b57\u6bcd\u7528 charAt(0) \u90a3\u5957\u9996\u5b57\u6bcd\u5927\u5199\u60ef\u7528\u6cd5\u4f1a\u6574\u6b65\u5931\u6548\u3002<\/li>\n<\/ul>\n<p>\u8fd9\u7bc7\u6587\u7ae0\u628a\u56db\u6761\u5404\u81ea\u505a\u6210\u5b9e\u6d4b&#xff0c;\u6700\u540e\u7ed9\u4e00\u4efd\u80fd\u76f4\u63a5\u6284\u7684\u6298\u53e0\u952e\u5b9e\u73b0\u3001\u4e00\u4efd\u9010\u7801\u70b9\u7684\u9996\u5b57\u6bcd\u5927\u5199\u5b9e\u73b0&#xff0c;\u548c\u4e00\u5f20\u300c\u5927\u5c0f\u5199\u8f6c\u6362\u524d\u8be5\u95ee\u7684 12 \u4e2a\u95ee\u9898\u300d\u3002<\/p>\n<h3>\u4e00\u3001\u5148\u644a\u5f00\u8fd9\u4efd\u540d\u5355\u548c\u4e94\u79cd\u53e3\u5f84\u7684\u7ed3\u679c<\/h3>\n<p>14 \u884c\u540d\u5355&#xff08;\u5c31\u662f\u4e0a\u9762\u90a3\u6279&#xff0c;\u542b\u523b\u610f\u7684\u91cd\u590d&#xff09;&#xff1a;<\/p>\n<p>stra\u00dfe  STRASSE  Stra\u00dfe  strasse<br \/>\n\u0130stanbul  ISTANBUL  istanbul  \u0131stanbul<br \/>\n\u03a3 aaa  \u03c3 aaa  \u03c2 aaa<br \/>\n\ufb01le  FILE  file<\/p>\n<p>\u4e94\u79cd\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u7684\u5b9e\u73b0\u4e0e\u5b83\u4eec\u7684\u552f\u4e00\u6570&#xff1a;<\/p>\n<table>\n<tr>\u53e3\u5f84\u5b9e\u73b0\u8981\u70b9\u552f\u4e00\u6570<\/tr>\n<tbody>\n<tr>\n<td>\u539f\u6837<\/td>\n<td>\u4e0d\u505a\u4efb\u4f55\u6298\u53e0<\/td>\n<td>14<\/td>\n<\/tr>\n<tr>\n<td>lower \u952e<\/td>\n<td>s.toLowerCase()<\/td>\n<td>9<\/td>\n<\/tr>\n<tr>\n<td>Collator<\/td>\n<td>Intl.Collator(&#039;und&#039;, {sensitivity:&#039;accent&#039;}) \u4e24\u4e24\u6bd4\u8f83<\/td>\n<td>7<\/td>\n<\/tr>\n<tr>\n<td>upper \u952e<\/td>\n<td>s.toUpperCase()<\/td>\n<td>5<\/td>\n<\/tr>\n<tr>\n<td>\u624b\u5de5\u5b89\u5168\u6298\u53e0<\/td>\n<td>\u5c0f\u5199\u5316\u540e\u518d\u8865 \u00df\u2192ss\u3001\u0130\/\u0131\u2192i\u3001\u8fde\u5b57\u5c55\u5f00\u3001\u03c2\u2192\u03c3<\/td>\n<td>5<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u9010\u6761\u660e\u7ec6&#xff08;lower \u952e\u4e0e\u624b\u5de5\u6298\u53e0\u952e\u90fd\u5370\u51fa\u6765&#xff0c;upper \u952e\u56e0\u4e3a\u53ea\u5269 5 \u7c7b\u6ca1\u5355\u72ec\u5217&#xff09;&#xff1a;<\/p>\n<p>&#034;stra\u00dfe&#034;    lower&#061;&#034;stra\u00dfe&#034;    fold&#061;&#034;strasse&#034;<br \/>\n&#034;STRASSE&#034;   lower&#061;&#034;strasse&#034;   fold&#061;&#034;strasse&#034;<br \/>\n&#034;Stra\u00dfe&#034;    lower&#061;&#034;stra\u00dfe&#034;    fold&#061;&#034;strasse&#034;<br \/>\n&#034;strasse&#034;   lower&#061;&#034;strasse&#034;   fold&#061;&#034;strasse&#034;<br \/>\n&#034;\u0130stanbul&#034;  lower&#061;&#034;i\u0307stanbul&#034;  fold&#061;&#034;i\u0307stanbul&#034;<br \/>\n&#034;ISTANBUL&#034;  lower&#061;&#034;istanbul&#034;  fold&#061;&#034;istanbul&#034;<br \/>\n&#034;istanbul&#034;  lower&#061;&#034;istanbul&#034;  fold&#061;&#034;istanbul&#034;<br \/>\n&#034;\u0131stanbul&#034;  lower&#061;&#034;\u0131stanbul&#034;  fold&#061;&#034;istanbul&#034;<br \/>\n&#034;\u03a3 aaa&#034;     lower&#061;&#034;\u03c3 aaa&#034;     fold&#061;&#034;\u03c3 aaa&#034;<br \/>\n&#034;\u03c3 aaa&#034;     lower&#061;&#034;\u03c3 aaa&#034;     fold&#061;&#034;\u03c3 aaa&#034;<br \/>\n&#034;\u03c2 aaa&#034;     lower&#061;&#034;\u03c2 aaa&#034;     fold&#061;&#034;\u03c3 aaa&#034;<br \/>\n&#034;\ufb01le&#034;       lower&#061;&#034;\ufb01le&#034;       fold&#061;&#034;file&#034;<br \/>\n&#034;FILE&#034;      lower&#061;&#034;file&#034;      fold&#061;&#034;file&#034;<br \/>\n&#034;file&#034;      lower&#061;&#034;file&#034;      fold&#061;&#034;file&#034;<\/p>\n<p>\u56db\u4e2a\u6570\u5404\u81ea\u6f0f\u5728\u54ea\u91cc&#xff0c;\u6b63\u597d\u5bf9\u5e94\u540e\u9762\u56db\u8282&#xff1a;<\/p>\n<ul>\n<li>lower \u952e &#061; 9&#xff1a;stra\u00dfe \/ Stra\u00dfe \/ STRASSE \/ strasse \u56db\u79cd\u5199\u6cd5\u88ab\u6298\u6210\u4e24\u79cd&#xff08;\u00df \u5c0f\u5199\u5316\u8fd8\u662f \u00df&#xff0c;STRASSE \u5c0f\u5199\u5316\u6210 strasse&#xff09;&#xff0c;\u56db\u79cd\u571f\u8033\u5176 i \u5199\u6cd5\u88ab\u6298\u6210\u4e09\u79cd&#xff08;\u0130stanbul \u5c0f\u5199\u5316\u540e\u662f i \u52a0\u4e0a\u7ec4\u5408\u4e0a\u53e5\u70b9&#xff0c;\u4e0e istanbul \u4e0d\u76f8\u7b49&#xff09;&#xff0c;\u4e09\u79cd sigma \u5199\u6cd5\u6298\u6210\u4e24\u79cd&#xff08;\u03c2 \u4e0d\u53d7 toLowerCase \u5f71\u54cd&#xff09;&#xff0c;\ufb01le \u90a3\u7ec4\u6298\u6210\u4e24\u79cd&#xff08;\u8fde\u5b57\u5c0f\u5199\u5316\u8fd8\u662f\u8fde\u5b57&#xff09;\u3002<\/li>\n<li>upper \u952e &#061; 5&#xff1a;\u53cd\u8fc7\u6765&#xff0c;\u00df\u3001\ufb01 \u5927\u5199\u5316\u6210 SS\u3001FI \u4e4b\u540e\u4e0e\u62c9\u4e01\u62fc\u5199\u5b8c\u5168\u4e00\u81f4&#xff0c;\u03a3\/\u03c3\/\u03c2 \u5168\u5e76\u6210 \u03a3\u3002\u4f46 \u0130stanbul \u4e0e ISTANBUL \u5728 upper \u952e\u4e0b\u4ecd\u7136\u4e0d\u540c&#xff08;\u0130 \u5927\u5199\u5316\u662f\u5b83\u81ea\u5df1&#xff09;&#xff0c;\u0131stanbul \u4e0e istanbul \u4e5f\u4e0d\u540c\u3002<\/li>\n<li>Collator &#061; 7&#xff1a;\u5b83\u80fd\u8ba4 \u03a3\/\u03c3\/\u03c2 \u4e0e \ufb01\/FI \u7684\u7b49\u4ef7&#xff0c;\u5374\u4ecd\u7136\u628a \u00df \u4e0e ss \u5224\u6210\u4e0d\u540c&#xff08;accent \u6863\u7ed9\u7684\u662f 1 \u6216 \u22121&#xff0c;\u4e0d\u662f 0&#xff09;\u3002<\/li>\n<li>\u624b\u5de5\u6298\u53e0 &#061; 5&#xff1a;\u8fd9\u6863\u4e0d\u662f\u300c\u66f4\u806a\u660e\u300d&#xff0c;\u800c\u662f\u660e\u786e\u5b9a\u4e49\u4e86\u4e1a\u52a1\u4e0a\u7684\u7b49\u540c\u5173\u7cfb\u2014\u2014\u628a\u8fde\u5b57\u5c55\u5f00\u3001\u628a \u00df \u6362\u6210 ss\u3001\u628a\u4e24\u79cd\u571f\u8033\u5176 i \u5f52\u5230 i\u3001\u628a\u8bcd\u5c3e sigma \u5f52\u5230 \u03c3\u3002\u5b83\u662f\u552f\u4e00\u9700\u8981\u4f60\u53bb\u5199\u51fa\u6765\u7684\u90a3\u4e00\u4e2a\u3002<\/li>\n<\/ul>\n<p>\u987a\u5e26\u4e00\u6761\u5b9e\u6d4b&#xff1a;14 \u5bf9\u7ec4\u5408\u91cc&#xff0c;\u300clower \u952e\u662f\u5426\u76f8\u7b49\u300d\u4e0e\u300cupper \u952e\u662f\u5426\u76f8\u7b49\u300d\u8fd9\u4e24\u4e2a\u5224\u5b9a\u672c\u8eab\u5c31\u6709 4 \u5bf9\u4e0d\u4e00\u81f4&#xff08;stra\u00dfe\/STRASSE\u3001Stra\u00dfe\/strasse\u3001\ufb04\/FFL\u3001\ufb01le\/FILE \u662f lower \u4e0d\u540c\u800c upper \u76f8\u540c&#xff09;\u3002\u6240\u4ee5\u4e0d\u5b58\u5728\u4e00\u4e2a\u300c\u6807\u51c6\u7684\u5927\u5c0f\u5199\u4e0d\u654f\u611f\u76f8\u7b49\u300d&#xff0c;\u53ea\u6709\u9009\u5b9a\u7684\u53e3\u5f84\u3002<\/p>\n<h3>\u4e8c\u3001\u5927\u5c0f\u5199\u6620\u5c04\u4e0d\u662f 1:1&#xff1a;\u7801\u5143\u6570\u4f1a\u53d8\u7684 7 \u4e2a\u6837\u672c<\/h3>\n<p>String.prototype.toUpperCase\/toLowerCase \u8d70\u7684\u662f Unicode \u7684\u5168\u6620\u5c04&#xff08;full case mapping&#xff09;&#xff0c;\u4e00\u4e2a\u5b57\u7b26\u53ef\u4ee5\u6620\u5c04\u6210\u591a\u4e2a\u5b57\u7b26\u300232 \u4e2a\u6837\u672c\u91cc\u957f\u5ea6\u4f1a\u53d8\u7684 7 \u4e2a&#xff0c;\u9010\u6761\u5b9e\u6d4b&#xff08;\u7801\u5143\u6570 \/ UTF-8 \u5b57\u8282\u6570&#xff09;&#xff1a;<\/p>\n<table>\n<tr>\u8f93\u5165\u539f\u5927\u5199\u5316\u5c0f\u5199\u5316\u8bf4\u660e<\/tr>\n<tbody>\n<tr>\n<td>\u00df<\/td>\n<td>1 \/ 2 B<\/td>\n<td>2 \/ 2 B &#061; SS<\/td>\n<td>1 \/ 2 B<\/td>\n<td>\u5c0f\u5199\u6ca1\u6709\u5bf9\u5e94\u5355\u5b57\u7b26\u7684\u5927\u5199\u5f62\u5f0f&#xff0c;\u53ea\u80fd\u5c55\u5f00<\/td>\n<\/tr>\n<tr>\n<td>\ufb01<\/td>\n<td>1 \/ 3 B<\/td>\n<td>2 \/ 2 B &#061; FI<\/td>\n<td>1 \/ 3 B<\/td>\n<td>\u7801\u5143\u53d8\u591a\u3001\u5b57\u8282\u53cd\u800c\u53d8\u5c11<\/td>\n<\/tr>\n<tr>\n<td>\ufb05<\/td>\n<td>1 \/ 3 B<\/td>\n<td>2 \/ 2 B &#061; ST<\/td>\n<td>1 \/ 3 B<\/td>\n<td>\u540c\u4e0a<\/td>\n<\/tr>\n<tr>\n<td>\ufb03<\/td>\n<td>1 \/ 3 B<\/td>\n<td>3 \/ 3 B &#061; FFI<\/td>\n<td>1 \/ 3 B<\/td>\n<td>\u4e00\u4e2a\u5b57\u7b26\u70b8\u6210\u4e09\u4e2a<\/td>\n<\/tr>\n<tr>\n<td>\u0130<\/td>\n<td>1 \/ 2 B<\/td>\n<td>1 \/ 2 B<\/td>\n<td>2 \/ 3 B &#061; i &#043; U&#043;0307<\/td>\n<td>\u5c0f\u5199\u5316\u65f6\u65b0\u589e\u4e00\u4e2a\u7ec4\u5408\u7b26<\/td>\n<\/tr>\n<tr>\n<td>\u0390<\/td>\n<td>1 \/ 2 B<\/td>\n<td>3 \/ 6 B &#061; \u0399 &#043; U&#043;0308 &#043; U&#043;0301<\/td>\n<td>1 \/ 2 B<\/td>\n<td>\u5e0c\u814a\u6587\u5e26\u5206\u97f3\u7b26\u91cd\u97f3&#xff0c;\u5c55\u5f00\u6210\u4e09\u7801\u5143<\/td>\n<\/tr>\n<tr>\n<td>\u0149<\/td>\n<td>1 \/ 2 B<\/td>\n<td>2 \/ 3 B &#061; U&#043;02BC &#043; N<\/td>\n<td>1 \/ 2 B<\/td>\n<td>\u524d\u9762\u90a3\u4e2a\u662f\u6487\u53f7&#xff0c;\u4e0d\u662f\u5b57\u6bcd<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u4e09\u4ef6\u4e8b\u8981\u4ece\u8fd9\u4e24\u5f20\u8868\u91cc\u62ff\u7a33&#xff1a;<\/p>\n<li>\u957f\u5ea6\u516c\u5f0f\u5728\u5b57\u7b26\u5c42\u5c31\u4e0d\u6210\u7acb\u3002\u4efb\u4f55\u300c\u8f6c\u6362\u524d\u540e\u957f\u5ea6\u5b88\u6052\u300d\u7684\u5047\u8bbe\u3001\u4efb\u4f55\u6309 input.length \u9884\u7559\u7f13\u51b2\u533a\u3001\u6309\u7801\u5143\u4e0b\u6807\u5207\u7247\u7684\u505a\u6cd5&#xff0c;\u5728\u8fd9\u91cc\u90fd\u4f1a\u9519\u4f4d\u3002\u4e0a\u9762 \u0130 \u90a3\u884c\u662f\u5178\u578b&#xff1a;\u5c0f\u5199\u5316\u628a 1 \u4e2a\u7801\u5143\u53d8\u6210 2 \u4e2a\u30012 \u5b57\u8282\u53d8\u6210 3 \u5b57\u8282\u3002<\/li>\n<li>\u7801\u5143\u6570\u4e0e\u5b57\u8282\u6570\u53ef\u4ee5\u53cd\u5411\u53d8\u5316\u3002\ufb01 \u662f U&#043;FB01&#xff0c;UTF-8 \u5360 3 \u5b57\u8282&#xff1b;\u5927\u5199\u5316\u540e\u7684 FI \u662f\u4e24\u4e2a ASCII&#xff0c;\u5360 2 \u5b57\u8282\u3002\u6309\u5b57\u8282\u7b97\u300c\u53d8\u77ed\u4e86\u300d&#xff0c;\u6309\u7801\u5143\u7b97\u300c\u53d8\u957f\u4e86\u300d\u2014\u2014\u8fd9\u4e24\u5957\u6570\u5b57\u5728\u5bf9\u9f50\u3001\u622a\u65ad\u3001\u5b58 varchar(n) \u65f6\u662f\u4e0d\u540c\u7ea6\u675f\u3002<\/li>\n<li>\u5927\u5c0f\u5199\u5316\u4e0d\u7b49\u4e8e\u89c4\u8303\u5316\u3002\u00e9 \u8fd9\u7c7b\u9884\u7ec4\u5408\u5b57\u7b26\u7684\u6620\u5c04\u662f 1\u21921&#xff1b;\u800c\u5206\u89e3\u5f0f\u8f93\u5165&#xff08;A &#043; \u7ec4\u5408\u91cd\u97f3&#xff09;\u5b9e\u6d4b\u53ea\u505a\u57fa\u7840\u5b57\u6bcd\u7684\u6620\u5c04&#xff0c;\u7ec4\u5408\u7b26\u539f\u6837\u4fdd\u7559&#xff1a;A\\\\u0300 \u5c0f\u5199\u5316\u6210 a\\\\u0300&#xff08;2 \u7801\u5143\u4e0d\u53d8&#xff09;&#xff0c;I\\\\u0307 \u5c0f\u5199\u5316\u6210 i\\\\u0307&#xff08;2 \u7801\u5143&#xff09;&#xff0c;\u4e0d\u4f1a\u987a\u624b\u5408\u6210\u4e00\u4e2a\u9884\u7ec4\u5408\u5b57\u7b26\u3002\u4e5f\u5c31\u662f\u8bf4&#xff0c;a\\\\u0300 \u4e0e \u00e0 \u7ecf\u8fc7\u5927\u5c0f\u5199\u5316\u4ecd\u7136\u4e0d\u76f8\u7b49\u2014\u2014\u60f3\u5408\u5b83\u4eec\u5f97\u53e6\u8d70 normalize(&#039;NFC&#039;)\u3002<\/li>\n<p>\u540c\u4e00\u9875\u5de5\u5177\u4e0a\u4e5f\u80fd\u91cf\u5230\u8fd9\u4e24\u6761&#xff1a;\u0130stanbul 8 \u7801\u5143 \/ 9 \u5b57\u8282&#xff0c;\u5c0f\u5199\u5316\u540e 9 \u7801\u5143 \/ 10 \u5b57\u8282&#xff1b;stra\u00dfe 6 \u7801\u5143 \/ 7 \u5b57\u8282&#xff0c;\u5927\u5199\u5316\u540e 7 \u7801\u5143 \/ 7 \u5b57\u8282&#xff08;\u591a\u4e00\u4e2a\u7801\u5143\u3001\u5b57\u8282\u4e0d\u53d8&#xff09;\u3002<\/p>\n<h3>\u4e09\u3001\u6709\u5927\u5c0f\u5199\u4f46\u6ca1\u6709\u6620\u5c04\u7684\u5b57\u7b26&#xff1a;6 \u4e2a\u53cc\u5411\u60f0\u6027\u6837\u672c<\/h3>\n<p>\u6620\u5c04\u8868\u91cc\u6ca1\u6709\u6761\u76ee\u65f6&#xff0c;\u8f6c\u6362\u662f\u9759\u9ed8\u7684\u7a7a\u64cd\u4f5c\u2014\u2014\u4e0d\u62a5\u9519\u3001\u4e0d\u63d0\u793a\u3001\u7ed3\u679c\u4e0e\u8f93\u5165\u9010\u5b57\u8282\u76f8\u540c\u300234 \u4e2a\u6837\u672c\u91cc toUpperCase \u4e0e toLowerCase \u53cc\u5411\u90fd\u4e0d\u53d8\u7684\u6709 6 \u4e2a&#xff1a;<\/p>\n<p>&#x1d400;   \u6570\u5b66\u7c97\u4f53\u5927\u5199\u5b57\u6bcd&#xff08;U&#043;1D400&#xff0c;2 \u7801\u5143&#xff09;<br \/>\n\u2116   \u5e8f\u53f7\u6807\u5fd7<br \/>\n\u337f  \u65e5\u6587\u65b9\u5934\u5b57\u300c\u682a\u5f0f\u4f1a\u793e\u300d<br \/>\n1   \u6570\u5b57<br \/>\n\u4e2d   \u6c49\u5b57<br \/>\n\u1d6b   \u5c0f\u578b\u5b57\u6bcd u&#xff08;U&#043;1D6B&#xff09;<\/p>\n<p>\u540c\u4e00\u6279\u91cc\u300c\u5927\u5199\u5316\u4e0d\u53d8\u300d\u7684\u6709 18 \u4e2a\u3001\u300c\u5c0f\u5199\u5316\u4e0d\u53d8\u300d\u7684\u6709 20 \u4e2a\u3002\u8fd9\u4e2a\u4e0d\u5bf9\u79f0\u503c\u5f97\u8bb0\u4e00\u4e0b&#xff1a;\u50cf \u03a9\u3001\u023a\u3001\u014a\u3001\u0152\u3001\u1e9e\u3001\u03a3\u3001\u039f\u0394\u039f\u03a3 \u8fd9\u4e9b\u5df2\u7ecf\u5927\u5199\u7684\u4e32&#xff0c;\u5927\u5199\u5316\u662f\u7a7a\u64cd\u4f5c&#xff0c;\u4f46\u5c0f\u5199\u5316\u6709\u6548&#xff1b;\u53cd\u8fc7\u6765 \u00df\u3001\ufb01\u3001\u00e6\u3001\u0292\u3001\u01c6 \u5c0f\u5199\u5316\u662f\u7a7a\u64cd\u4f5c&#xff0c;\u5927\u5199\u5316\u6709\u6548\u3002\u6240\u4ee5\u300c\u8dd1\u4e86\u5927\u5199\u5316\u4e4b\u540e\u5b57\u7b26\u4e32\u6ca1\u53d8\u300d\u6709\u4e24\u79cd\u5b8c\u5168\u4e0d\u540c\u7684\u542b\u4e49&#xff1a;\u5b83\u672c\u6765\u5c31\u5168\u5927\u5199&#xff0c;\u6216\u8005\u5b83\u538b\u6839\u6ca1\u6709\u6620\u5c04\u3002 \u53ea\u770b\u8f93\u51fa\u957f\u5ea6\u5224\u65ad\u300c\u8f6c\u6362\u6210\u529f\u300d\u4f1a\u540c\u65f6\u8e29\u4e2d\u8fd9\u4e24\u79cd\u3002<\/p>\n<p>&#x1d400; \u90a3\u4e00\u884c\u5c24\u5176\u5bb9\u6613\u770b\u8d70\u773c&#xff1a;\u5b83\u5728 Unicode \u91cc\u89c6\u89c9\u4e0a\u786e\u5b9e\u6709\u7c97\u4f53\u5c0f\u5199\u5bf9\u5e94&#xff08;\u6570\u5b66\u5b57\u6bcd\u8868\u7b26\u53f7\u533a\u6bb5&#xff09;&#xff0c;\u4f46 JavaScript \u7684\u6620\u5c04\u8868\u4e0d\u4e3a\u6570\u5b66\u5b57\u6bcd\u8868\u7b26\u53f7\u5b9a\u4e49\u5927\u5c0f\u5199&#xff0c;\u5b9e\u6d4b &#039;&#x1d41a;&#039;.toUpperCase() &#061;&#061;&#061; &#039;&#x1d41a;&#039;\u3001&#039;&#x1d400;&#039;.toLowerCase() &#061;&#061;&#061; &#039;&#x1d400;&#039; \u90fd\u6210\u7acb\u3002\u540c\u7406 \u2116 \u91cc\u7684 N\u3001\u337f \u91cc\u7684\u6c49\u5b57&#xff0c;\u4efb\u4f55\u5927\u5c0f\u5199\u64cd\u4f5c\u90fd\u662f\u7a7a\u3002<\/p>\n<h3>\u56db\u3001\u4f4d\u7f6e\u654f\u611f&#xff1a;\u540c\u4e00\u4e2a\u5b57\u6bcd&#xff0c;\u8bcd\u4e2d\u548c\u8bcd\u5c3e\u4e0d\u662f\u540c\u4e00\u4e2a\u5b57\u7b26<\/h3>\n<p>\u5e0c\u814a\u6587\u7684\u5927\u5199 sigma \u5c0f\u5199\u5316\u65f6&#xff0c;\u7ed3\u679c\u53d6\u51b3\u4e8e\u5b83\u5728\u8bcd\u91cc\u7684\u4f4d\u7f6e&#xff08;Unicode \u7684 Final_Sigma \u7279\u6b8a\u6620\u5c04&#xff09;\u30026 \u7ec4\u5b9e\u6d4b&#xff0c;\u53f3\u8fb9\u662f\u8f93\u51fa\u7801\u70b9&#xff1a;<\/p>\n<p>&#034;\u03a3&#034;        \u2192 &#034;\u03c3&#034;      [03C3]<br \/>\n&#034;\u0391\u03a3\u0392&#034;      \u2192 &#034;\u03b1\u03c3\u03b2&#034;    [03B1 03C3 03B2]        \u2190 \u8bcd\u4e2d&#xff1a;\u666e\u901a \u03c3<br \/>\n&#034;\u039f\u0394\u039f\u03a3&#034;     \u2192 &#034;\u03bf\u03b4\u03bf\u03c2&#034;   [03BF 03B4 03BF 03C2]   \u2190 \u8bcd\u5c3e&#xff1a;\u7ec8\u5f62\u5f0f \u03c2<br \/>\n&#034;\u03a3\u03a3\u03a3&#034;      \u2192 &#034;\u03c3\u03c3\u03c2&#034;    [03C3 03C3 03C2]        \u2190 \u4e00\u4e32\u540c\u5b57\u6bcd&#xff0c;\u672b\u4f4d\u4ecd\u6362\u6210 \u03c2<br \/>\n&#034;\u03c2\u03a3\u03c2&#034;      \u2192 &#034;\u03c2\u03c3\u03c2&#034;    [03C2 03C3 03C2]        \u2190 \u5df2\u7ecf\u662f\u7ec8\u5f62\u5f0f\u7684\u4fdd\u6301<br \/>\n&#034;\u0391\u0392\u03a3 \u0393\u0394&#034;   \u2192 &#034;\u03b1\u03b2\u03c2 \u03b3\u03b4&#034; [03B1 03B2 03C2 0020 03B3 03B4]  \u2190 \u8bcd\u5c3e\u5224\u5b9a\u8fde\u7740\u7a7a\u767d\u5206\u8bcd<\/p>\n<p>\u5bf9\u505a\u952e\u503c\u6298\u53e0\u7684\u4eba\u6765\u8bf4&#xff0c;\u8fd9\u610f\u5473\u7740&#xff1a;\u03c3 \u4e0e \u03c2 \u662f\u4e24\u4e2a\u4e0d\u540c\u7684\u7801\u70b9&#xff0c;toLowerCase \u4e0d\u4f1a\u628a\u5b83\u4eec\u5e76\u8d77\u6765&#xff08;\u5b83\u53ea\u5904\u7406\u5927\u5199\u2192\u5c0f\u5199\u65b9\u5411&#xff09;\u3002\u540d\u5355\u91cc \u03c3 aaa\u3001\u03c2 aaa \u4e24\u79cd\u5199\u6cd5\u5728\u5c0f\u5199\u952e\u4e0b\u7b97\u4e24\u6761&#xff0c;\u5728\u5927\u5199\u952e\u4e0b\u7b97\u4e00\u6761&#xff08;\u90fd\u5347\u6210 \u03a3&#xff09;&#xff1b;\u60f3\u4e24\u5411\u90fd\u7a33&#xff0c;\u5c31\u5f97\u663e\u5f0f\u505a\u6298\u53e0&#xff08;\u03c2 \u2192 \u03c3&#xff09;\u3002\u800c \u03a3\u03a3\u03a3 \u5c0f\u5199\u5316\u4f1a\u5f97\u5230 \u03c3\u03c3\u03c2&#xff0c;\u518d\u62ff\u5b83\u53bb\u548c\u539f\u4e32\u6bd4\u300c\u662f\u4e0d\u662f\u5e42\u7b49\u300d&#xff0c;\u4f60\u4f1a\u4ee5\u4e3a\u51fd\u6570\u4e0d\u7a33\u5b9a\u2014\u2014\u5176\u5b9e\u662f\u6620\u5c04\u672c\u8eab\u5e26\u4e0a\u4e0b\u6587\u3002<\/p>\n<p>\u53e6\u4e00\u4e2a\u540c\u6e90\u7684\u4f4d\u7f6e\u654f\u611f\u6620\u5c04\u662f \u0392\u2026 \u4e0d&#xff0c;\u66f4\u5e38\u89c1\u7684\u5751\u662f \u01c5 \u8fd9\u7c7b\u6807\u9898\u5f0f\u8fde\u5b57&#xff08;U&#043;01C5 \u662f\u300c\u5927\u5199 D &#043; \u5c0f\u5199 z\u300d\u7684\u5355\u4e00\u7801\u4f4d&#xff09;&#xff1a;\u5b83\u7684\u5927\u5199\u5316\u662f \u01c4\u3001\u5c0f\u5199\u5316\u662f \u01c6&#xff0c;\u4e09\u4e2a\u4e0d\u540c\u7801\u4f4d&#xff0c;\u800c Dz \u4e24\u4e2a\u7801\u4f4d\u7684\u5927\u5199\u5316\u662f DZ\u3002\u5b9e\u6d4b \u01c5urad \u5c0f\u5199\u5316\u5f97\u5230 \u01c6urad&#xff08;5 \u7801\u5143&#xff09;&#xff0c;\u5927\u5199\u5316\u5f97\u5230 \u01c4URAD\u2014\u2014\u4e24\u4e2a\u65b9\u5411\u90fd\u4fdd\u6301 5 \u7801\u5143&#xff0c;\u4f46\u843d\u5230\u7684\u7801\u4f4d\u4e0e DZ \u7cfb\u5b8c\u5168\u4e0d\u540c&#xff0c;\u6298\u53e0\u65f6\u9700\u8981\u6309\u7801\u4f4d\u5904\u7406\u800c\u4e0d\u662f\u6309\u300c\u770b\u8d77\u6765\u662f\u4ec0\u4e48\u300d\u3002<\/p>\n<h3>\u4e94\u3001locale \u654f\u611f&#xff1a;i \u5bb6\u65cf\u5728\u4e0d\u540c\u8bed\u8a00\u91cc\u4e0d\u662f\u540c\u4e00\u4e2a\u5b57\u6bcd<\/h3>\n<p>\u571f\u8033\u5176\u8bed\u548c\u963f\u585e\u62dc\u7586\u8bed\u6709\u4e24\u5bf9 i&#xff1a;\u5e26\u70b9\u7684 \u0130\/i \u4e0e\u4e0d\u5e26\u7684 I\/\u0131&#xff0c;\u5b83\u4eec\u7684\u6620\u5c04\u4e0e\u9ed8\u8ba4\u53e3\u5f84\u4ea4\u53c9\u3002\u5b9e\u6d4b&#xff1a;<\/p>\n<table>\n<tr>\u8f93\u5165toLowerCase()toLocaleLowerCase(&#039;tr&#039;)toUpperCase()toLocaleUpperCase(&#039;az&#039;)<\/tr>\n<tbody>\n<tr>\n<td>ISTANBUL<\/td>\n<td>istanbul<\/td>\n<td>\u0131stanbul<\/td>\n<td>ISTANBUL<\/td>\n<td>ISTANBUL<\/td>\n<\/tr>\n<tr>\n<td>\u0130stanbul<\/td>\n<td>i\u0307stanbul&#xff08;i &#043; U&#043;0307&#xff09;<\/td>\n<td>istanbul<\/td>\n<td>\u0130STANBUL<\/td>\n<td>\u0130STANBUL<\/td>\n<\/tr>\n<tr>\n<td>i<\/td>\n<td>i<\/td>\n<td>i<\/td>\n<td>I<\/td>\n<td>\u0130<\/td>\n<\/tr>\n<tr>\n<td>I<\/td>\n<td>i<\/td>\n<td>\u0131<\/td>\n<td>I<\/td>\n<td>I<\/td>\n<\/tr>\n<tr>\n<td>fileID<\/td>\n<td>fileid<\/td>\n<td>file\u0131d<\/td>\n<td>FILEID<\/td>\n<td>F\u0130LEID<\/td>\n<\/tr>\n<tr>\n<td>INFO<\/td>\n<td>info<\/td>\n<td>\u0131nfo<\/td>\n<td>INFO<\/td>\n<td>INFO<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u4e09\u6761\u53e3\u5f84\u7ed3\u8bba&#xff1a;<\/p>\n<li>toLowerCase \/ toUpperCase \u4e0e locale \u65e0\u5173&#xff0c;\u8fd9\u662f\u89c4\u8303\u91cc\u7684\u786c\u7ea6\u5b9a&#xff0c;\u4e0a\u8868\u7b2c\u56db\u5217\u4e0e\u7b2c\u4e00\u5217\u5728\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u4e00\u81f4\u3002\u6240\u4ee5\u7528\u5b83\u4eec\u505a\u6298\u53e0\u952e&#xff0c;\u540c\u4e00\u4efd\u8f93\u5165\u5728\u54ea\u53f0\u673a\u5668\u4e0a\u90fd\u5f97\u5230\u540c\u4e00\u4e2a\u4e32\u2014\u2014\u8fd9\u662f\u597d\u4e8b&#xff0c;\u4e5f\u662f\u300c\u9ed8\u8ba4\u53e3\u5f84\u300d\u548c\u300c\u571f\u8033\u5176\u53e3\u5f84\u300d\u4f1a\u5206\u5bb6\u7684\u6839\u6e90\u3002<\/li>\n<li>toLocaleLowerCase \u4e0d\u4f20\u53c2\u65f6\u8ddf\u968f\u5b9e\u73b0\u89e3\u6790\u51fa\u7684\u9ed8\u8ba4 locale&#xff0c;\u4e0d\u662f\u8ddf\u968f\u4f60\u4ee3\u7801\u91cc\u7684\u5047\u8bbe\u3002\u5b9e\u6d4b\u8fd9\u53f0\u673a\u5668 Intl.DateTimeFormat().resolvedOptions().locale \u662f zh-CN&#xff0c;\u628a\u73af\u5883\u53d8\u91cf\u6539\u6210 LC_ALL&#061;tr_TR.UTF-8 \u4e5f\u6ca1\u80fd\u628a\u5b83\u632a\u8d70&#xff08;\u4e09\u6863\u73af\u5883\u53d8\u91cf\u6d4b\u4e0b\u6765\u89e3\u6790\u7ed3\u679c\u6052\u4e3a zh-CN&#xff09;\u3002\u6362\u53e5\u8bdd\u8bf4&#xff1a;\u8de8\u73af\u5883\u65f6\u4f60\u65e0\u6cd5\u9760\u672c\u673a\u590d\u73b0&#xff0c;\u4e5f\u65e0\u6cd5\u9760\u73af\u5883\u53d8\u91cf\u63a7\u5236&#xff1b;\u53ea\u6709\u663e\u5f0f\u4f20 locale \u624d\u662f\u786e\u5b9a\u7684\u3002<\/li>\n<li>\u771f\u6b63\u7684\u4e8b\u6545\u5f62\u6001\u662f\u6df7\u7528&#xff1a;\u670d\u52a1\u7aef\u7528 JS toLowerCase() \u6298\u51fa\u7684\u952e\u662f istanbul&#xff0c;\u800c\u6d4f\u89c8\u5668\u91cc CSS text-transform: lowercase \u6216\u67d0\u4e2a ICU \u7ec4\u4ef6\u6309\u7528\u6237 locale \u6298\u51fa \u0131stanbul&#xff1b;fileID \u8fd9\u7c7b\u9a7c\u5cf0\u5b57\u6bb5\u540d\u88ab toLocaleLowerCase(&#039;tr&#039;) \u6298\u6210 file\u0131d \u4e4b\u540e&#xff0c;\u67e5\u4e0d\u5230\u5217\u540d\u3001\u5339\u914d\u4e0d\u5230 key\u3001\u751f\u6210\u7684\u6587\u4ef6\u540d\u5728\u5927\u5c0f\u5199\u4e0d\u654f\u611f\u6587\u4ef6\u7cfb\u7edf\u4e0a\u5bf9\u4e0d\u4e0a\u2014\u2014\u540c\u4e00\u6bb5\u4ee3\u7801&#xff0c;\u7528\u6237\u7cfb\u7edf\u8bed\u8a00\u4e00\u53d8\u5c31\u53d8\u3002\u4e1a\u52a1\u91cc\u9700\u8981\u300c\u6309\u7528\u6237\u8bed\u8a00\u6298\u300d\u7684\u573a\u666f&#xff08;\u4f8b\u5982\u7ed9\u571f\u8033\u5176\u7528\u6237\u5c55\u793a\u5168\u5c0f\u5199\u6807\u9898&#xff09;\u8981\u663e\u5f0f\u4f20 locale&#xff0c;\u5e76\u4e14\u7edd\u4e0d\u8981\u7528 locale \u7248\u51fd\u6570\u751f\u6210\u4efb\u4f55\u952e\u3001ID\u3001\u8def\u5f84\u3002<\/li>\n<h3>\u516d\u3001\u975e BMP&#xff1a;charAt(0) \u90a3\u5957\u9996\u5b57\u6bcd\u5927\u5199\u4f1a\u6574\u6b65\u5931\u6548<\/h3>\n<p>\u300c\u53d6\u9996\u5b57\u7b26\u5927\u5199 &#043; \u5176\u4f59\u5c0f\u5199\u300d\u662f Title Case \u7684\u5e38\u89c1\u5199\u6cd5\u3002\u95ee\u9898\u5728\u4e8e JavaScript \u5b57\u7b26\u4e32\u662f UTF-16 \u7801\u5143\u5e8f\u5217&#xff0c;charAt(0) \u53d6\u5230\u7684\u53ef\u80fd\u662f\u534a\u4e2a\u5b57\u7b26\u3002\u5b9e\u6d4b\u4e0b\u8868\u4e24\u7248&#xff1a;\u300c\u7801\u5143\u7248\u300d&#061; s.charAt(0).toUpperCase() &#043; s.slice(1).toLowerCase()&#xff0c;\u300c\u7801\u70b9\u7248\u300d&#061; \u5148\u7528 Array.from \u5207\u6210\u7801\u70b9\u6570\u7ec4\u3001\u518d\u505a\u540c\u6837\u4e24\u6b65\u3002<\/p>\n<p>&#034;&#x10428;&#x10434;&#x10428;&#034;&#xff08;Deseret&#xff0c;U&#043;10428 U&#043;10434 U&#043;10428&#xff09;  \u7801\u51436 \u7801\u70b93<br \/>\n    \u5168\u4e32 upper &#061; &#034;&#x10400;&#x1040c;&#x10400;&#034;&#xff08;U&#043;10400 U&#043;1040C U&#043;10400&#xff0c;\u6b63\u786e&#xff09;<br \/>\n    \u7801\u5143\u7248 &#061; &#034;&#x10428;&#x10434;&#x10428;&#034;&#xff08;\u539f\u6837&#xff0c;\u9996\u5b57\u6bcd\u6ca1\u5927\u5199&#xff09;      \u7801\u70b9\u7248 &#061; &#034;&#x10400;&#x10434;&#x10428;&#034;&#xff08;\u6b63\u786e&#xff09;<br \/>\n&#034;&#x1e922;&#x1e941;&#034;&#xff08;Adlam&#xff0c;U&#043;1E922 U&#043;1E941&#xff09;  \u7801\u51434 \u7801\u70b92<br \/>\n    \u5168\u4e32 upper &#061; &#034;&#x1e900;&#x1e91f;&#034;&#xff08;U&#043;1E900 U&#043;1E91F&#xff0c;\u6b63\u786e&#xff09;<br \/>\n    \u7801\u5143\u7248 &#061; &#034;&#x1e922;&#x1e941;&#034;&#xff08;\u539f\u6837&#xff09;              \u7801\u70b9\u7248 &#061; &#034;&#x1e900;&#x1e941;&#034;&#xff08;U&#043;1E900 U&#043;1E941&#xff0c;\u9996\u5b57\u6bcd\u5927\u5199\u751f\u6548&#xff09;<br \/>\n&#034;&#x1059c;&#034;&#xff08;Vithkuqi&#xff0c;U&#043;1059C&#xff09;  \u7801\u51432 \u7801\u70b91<br \/>\n    \u7801\u5143\u7248 &#061; &#034;&#x1059c;&#034;&#xff08;\u539f\u6837&#xff09;     \u7801\u70b9\u7248 &#061; &#034;&#x10575;&#034;&#xff08;U&#043;10575&#xff0c;\u6b63\u786e&#xff09;<br \/>\n&#034;x&#x1f600;y&#034;  \u7801\u51434 \u7801\u70b93  \u7801\u5143\u7248&#061;&#034;X&#x1f600;y&#034; \u7801\u70b9\u7248&#061;&#034;X&#x1f600;y&#034;&#xff08;\u4e00\u81f4&#xff09;<br \/>\n&#034;\u01c5urad&#034;  \u7801\u51435 \u7801\u70b95  \u7801\u5143\u7248&#061;&#034;\u01c4urad&#034; \u7801\u70b9\u7248&#061;&#034;\u01c4urad&#034;&#xff08;\u4e00\u81f4&#xff0c;\u4f46\u90fd\u4e0d\u662f\u671f\u671b\u7684 \u01c5urad&#xff09;<br \/>\n&#034;\ufb03&#034;  \u7801\u51431 \u7801\u70b91  \u7801\u5143\u7248&#061;&#034;FFI&#034; \u7801\u70b9\u7248&#061;&#034;FFI&#034;&#xff08;\u7801\u5143\u6570 1\u21923&#xff09;<\/p>\n<p>6 \u4e2a\u975e BMP \/ \u7279\u6b8a\u6837\u672c\u91cc 3 \u4e2a \u4e24\u7248\u7ed3\u679c\u4e0d\u540c&#xff0c;\u5168\u90fd\u662f\u300c\u7801\u70b9\u7248\u5bf9\u3001\u7801\u5143\u7248\u4ec0\u4e48\u90fd\u4e0d\u505a\u300d\u3002\u673a\u5236\u5f88\u76f4\u767d&#xff1a;\u9996\u5b57\u7b26\u662f\u4ee3\u7406\u5bf9\u65f6&#xff0c;charAt(0) \u62ff\u5230\u524d\u4ee3\u7406&#xff08;\u5b64\u7acb\u4ee3\u7406\u7801\u5143\u6ca1\u6709\u4efb\u4f55\u5927\u5c0f\u5199\u6620\u5c04&#xff09;&#xff0c;slice(1) \u4ece\u540e\u4ee3\u7406\u5f00\u59cb&#xff08;\u540c\u6837\u6ca1\u6709\u6620\u5c04&#xff09;&#xff0c;\u4e8e\u662f\u6574\u6b65\u9759\u9ed8\u8df3\u8fc7\u3002<\/p>\n<p>\u597d\u6d88\u606f\u662f\u5b83\u4e0d\u4f1a\u628a\u5b57\u7b26\u4e32\u5f04\u574f\u2014\u2014x&#x1f600;y \u8fd9\u7c7b emoji \u4e0d\u5728\u4e0b\u6807 0 \u65f6&#xff0c;\u4e24\u4e2a\u7801\u5143\u90fd\u4fdd\u6301\u539f\u6837&#xff0c;\u5b57\u8282\u6570\u4e0d\u53d8&#xff08;4 \u7801\u5143 \/ 6 \u5b57\u8282\u539f\u6837&#xff09;\u3002\u574f\u6d88\u606f\u662f\u5b83\u300c\u4ec0\u4e48\u90fd\u6ca1\u505a\u300d\u7684\u6837\u5b50&#xff0c;\u548c\u300c\u8fd9\u4e2a\u5b57\u7b26\u672c\u6765\u5c31\u4e0d\u9700\u8981\u5927\u5199\u300d\u5b8c\u5168\u4e00\u6837&#xff08;\u89c1\u7b2c\u4e09\u8282\u90a3 6 \u4e2a\u60f0\u6027\u5b57\u7b26&#xff09;\u3002\u5224\u5b9a\u65b9\u6cd5\u53ea\u6709\u4e00\u4e2a&#xff1a;\u62ff\u7801\u70b9\u7248\u7684\u8f93\u51fa\u4e0e\u7801\u5143\u7248\u6bd4\u5bf9&#xff0c;\u4e0d\u4e00\u81f4\u5c31\u8bf4\u660e\u7801\u5143\u7248\u6f0f\u4e86\u3002<\/p>\n<p>\u987a\u5e26\u4e24\u6761\u76f8\u5173\u53e3\u5f84&#xff0c;\u5b9e\u6d4b\u5728\u540c\u4e00\u6279\u6837\u672c\u4e0a\u5206\u53c9&#xff1a;<\/p>\n<ul>\n<li>\u300c\u4ec0\u4e48\u7b97\u5c0f\u5199\/\u5927\u5199\u300d&#xff1a;\/[A-Z]\/ \u5bf9 \u03a9\u00c0\u00df\u01c5\u0130&#x1d400; \u547d\u4e2d 0 \u4e2a&#xff0c;\/\\\\p{Lu}\/u \u547d\u4e2d 3 \u4e2a\u3002\u7528 ASCII \u5b57\u7b26\u7c7b\u505a\u300c\u9996\u5b57\u6bcd\u662f\u5426\u5df2\u5927\u5199\u300d\u7684\u5224\u65ad&#xff0c;\u5bf9\u5e26\u97f3\u6807\u7684\u5b57\u6bcd\u4e00\u5f8b\u7ed9\u51fa\u300c\u4e0d\u662f\u5927\u5199\u300d\u7684\u7ed3\u8bba\u3002<\/li>\n<li>\u9a7c\u5cf0\u8fb9\u754c\u7684\u8bc6\u522b&#xff1a;\u53ea\u770b\u300cASCII \u5c0f\u5199\u7d27\u8ddf ASCII \u5927\u5199\u300d\u65f6&#xff0c;13 \u6761\u6837\u672c\u6709 6 \u6761 \u4e0e\u6309 \\\\p{Ll}\\\\p{Lu} \u8bc6\u522b\u7684\u6bb5\u6570\u4e0d\u540c&#xff08;\u00e0B\u3001\u0101B\u3001\u00dfS\u3001\u00e9E\u3001\u00f1A\u3001\u00fcU \u5728\u524d\u8005\u773c\u91cc\u662f\u4e00\u4e2a\u8bcd&#xff0c;\u5728\u540e\u8005\u773c\u91cc\u662f\u4e24\u4e2a&#xff09;\u3002<\/li>\n<\/ul>\n<h3>\u4e03\u3001\u5b57\u7b26\u4e4b\u5916\u7684\u5751&#xff1a;\u7a7a\u767d\u53e3\u5f84\u4e0e\u300c\u770b\u4e0d\u89c1\u4f46\u7b97\u5185\u5bb9\u300d<\/h3>\n<p>\u5927\u5c0f\u5199\u5de5\u5177\u51e0\u4e4e\u603b\u6709\u300c\u7a7a\u8f93\u5165\u4e0d\u5904\u7406\u300d\u7684\u5b88\u536b&#xff0c;\u800c trim() \u4e0e \/s&#043;\/ \u8ba4\u5b9a\u7684\u7a7a\u767d\u8303\u56f4\u6bd4\u8089\u773c\u5bbd&#xff1a;<\/p>\n<p>\u88ab\u5224\u6210\u7a7a&#xff08;\u5b9e\u6d4b 6 \u7c7b&#xff0c;\u76f4\u63a5\u4e0d\u5904\u7406&#xff09;&#xff1a;<br \/>\n  &#034;&#034;&#xff08;\u7a7a\u4e32&#xff09;\u3001&#034;   &#034;&#xff08;3 \u4e2a\u7a7a\u683c&#xff09;\u3001&#034;\\\\t\\\\t&#034;&#xff08;2 \u4e2a\u5236\u8868\u7b26&#xff09;\u3001&#034;\\\\n&#034;\u3001<br \/>\n  &#034;\\\\uFEFF&#034;&#xff08;BOM&#xff0c;3 \u5b57\u8282&#xff09;\u3001&#034;\\\\u3000&#034;&#xff08;\u5168\u89d2\u7a7a\u683c&#xff0c;3 \u5b57\u8282&#xff09;<br \/>\n\u4e0d\u88ab\u5224\u6210\u7a7a\u3001\u539f\u6837\u8fdb\u8f93\u51fa\u7684&#xff1a;<br \/>\n  &#034;\\\\u200B&#034;&#xff08;\u96f6\u5bbd\u7a7a\u683c&#xff09;\u2192 \u65e2\u4e0d\u88ab trim() \u8ba4\u7a7a\u767d&#xff0c;\u4e5f\u4e0d\u88ab \/\\\\s&#043;\/ \u5207\u5206&#xff0c;\u8f93\u51fa\u4ecd\u662f 1 \u7801\u5143 \/ 3 \u5b57\u8282<\/p>\n<p>\u540e\u4e09\u7c7b&#xff08;BOM\u3001\u5168\u89d2\u7a7a\u683c\u3001\u6362\u884c&#xff09;\u5c4f\u5e55\u4e0a\u770b\u7740\u300c\u6709\u4e1c\u897f\u300d&#xff0c;\u5b88\u536b\u5374\u6309\u7a7a\u5904\u7406&#xff1b;\u53cd\u8fc7\u6765\u96f6\u5bbd\u7a7a\u683c\u8fd9\u79cd\u300c\u5c4f\u5e55\u4e0a\u4ec0\u4e48\u90fd\u6ca1\u6709\u300d\u7684\u5b57\u7b26\u4f1a\u4e00\u8def\u6d3b\u5230\u8f93\u51fa\u3002\u7c98\u5e16\u5e26 BOM\u3001\u4ece Excel \u590d\u5236\u5e26\u5168\u89d2\u7a7a\u683c&#xff0c;\u662f\u6700\u5e38\u89c1\u7684\u4e24\u79cd\u300c\u4e3a\u4ec0\u4e48\u5b83\u8bf4\u6211\u6ca1\u8f93\u5165\u300d\u3002<\/p>\n<p>\u53e6\u4e00\u7c7b\u662f\u540c\u4e00\u9875\u9762\u91cc\u7684\u4e24\u5957\u7a7a\u767d\u53e3\u5f84&#xff1a;\u76f4\u63a5\u5927\u5199\u5316\/\u5c0f\u5199\u5316\u4e24\u4e2a\u6a21\u5f0f\u4e0d\u505a\u4efb\u4f55 trim \u6216\u5408\u5e76\u7a7a\u767d&#xff0c;&#034; hello world &#034;&#xff08;17 \u5b57\u8282&#xff09;\u8f93\u51fa\u8fd8\u662f 17 \u5b57\u8282\u3001\u9996\u5c3e\u7a7a\u683c\u539f\u6837\u4fdd\u7559&#xff1b;\u800c\u4f9d\u8d56\u5207\u8bcd\u7684\u90a3\u51e0\u4e2a\u6a21\u5f0f\u4f1a trim \u5e76\u5408\u5e76\u8fde\u7eed\u7a7a\u767d&#xff0c;\u540c\u4e00\u8f93\u5165\u53ea\u5269 10\u201311 \u5b57\u8282&#xff08;camelCase\/PascalCase 10 \u5b57\u8282&#xff0c;Title Case\/snake_case\/kebab-case 11 \u5b57\u8282&#xff09;\u3002\u590d\u5236\u7c98\u8d34\u4e00\u8f6e\u4e4b\u540e\u9996\u5c3e\u7a7a\u683c\u6d88\u5931&#xff0c;\u4e0d\u662f\u4f60\u70b9\u7684\u6309\u94ae\u4e0d\u540c&#xff0c;\u662f\u4e24\u4e2a\u6a21\u5f0f\u8d70\u7684\u8def\u5f84\u4e0d\u540c\u3002 \u540c\u7406 a&#xff21;b \u91cc\u7684\u5168\u89d2 &#xff21;&#xff08;U&#043;FF21&#xff09;\u4e5f\u5728\u6620\u5c04\u8868\u5185&#xff1a;\u5b9e\u6d4b\u300c\u9996\u5b57\u6bcd\u5927\u5199\u300d\u6a21\u5f0f\u5f97\u5230 A&#xff41;b\u2014\u2014\u9996\u5b57\u7b26 ASCII a \u88ab\u5927\u5199\u5316&#xff0c;\u4e2d\u95f4\u7684\u5168\u89d2 A \u88ab\u5c0f\u5199\u5316\u6210\u4e86\u5168\u89d2 a\u3002\u6620\u5c04\u8868\u8986\u76d6\u7684\u4e0d\u53ea\u662f ASCII \u5b57\u6bcd&#xff0c;\u53ea\u662f\u5404\u5206\u652f\u662f\u5426\u8c03\u7528\u5b83\u4e0d\u4e00\u81f4\u3002<\/p>\n<p>\u89c4\u6a21\u4e0a\u6ca1\u6709\u4efb\u4f55\u62a4\u680f&#xff1a;200000 \u5b57\u7b26\u7684\u8f93\u5165\u5b9e\u6d4b 11 ms \u5b8c\u6210\u3001\u5207\u51fa 40001 \u4e2a\u8bcd&#xff0c;\u6ca1\u6709\u957f\u5ea6\u4e0a\u9650\u3001\u6ca1\u6709 try\/catch\u3002\u6240\u4ee5\u300c\u7c98\u8d34\u4e00\u6574\u4e2a\u65e5\u5fd7\u6587\u4ef6\u300d\u8fd9\u4ef6\u4e8b\u4e0d\u4f1a\u5931\u8d25&#xff0c;\u53ea\u4f1a\u5b89\u9759\u5730\u6309\u4e0a\u9762\u7684\u89c4\u5219\u5904\u7406\u6389\u3002<\/p>\n<h3>\u516b\u3001\u53ef\u6284\u5b9e\u73b0<\/h3>\n<p>\u6298\u53e0\u952e&#xff1a;\u5148 NFC&#xff0c;\u518d\u5c0f\u5199\u5316&#xff0c;\u518d\u8865\u4e0a\u300c\u6620\u5c04\u4e0d\u4f1a\u81ea\u52a8\u505a\u7684\u7b49\u4ef7\u300d\u3002\u8fd9\u662f\u672c\u6587\u90a3\u5f20 14 \u884c\u540d\u5355\u552f\u4e00\u80fd\u7ed9\u51fa\u300c\u6309\u4e1a\u52a1\u7b49\u540c\u300d\u7ed3\u679c\u7684\u505a\u6cd5&#xff0c;\u4e5f\u662f\u5b83\u548c toUpperCase() \u7248&#xff08;\u51d1\u5de7\u4e5f 5 \u6761&#xff09;\u7684\u533a\u522b\u2014\u2014\u5b83\u660e\u786e&#xff0c;\u53ef\u89e3\u91ca\u3001\u53ef\u589e\u5220\u3002<\/p>\n<p><span class=\"token keyword\">const<\/span> <span class=\"token constant\">LIGATURES<\/span> <span class=\"token operator\">&#061;<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n  <span class=\"token string-property property\">&#039;\\\\uFB00&#039;<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;ff&#039;<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string-property property\">&#039;\\\\uFB01&#039;<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;fi&#039;<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string-property property\">&#039;\\\\uFB02&#039;<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;fl&#039;<\/span><span class=\"token punctuation\">,<\/span><br \/>\n  <span class=\"token string-property property\">&#039;\\\\uFB03&#039;<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;ffi&#039;<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string-property property\">&#039;\\\\uFB04&#039;<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;ffl&#039;<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string-property property\">&#039;\\\\uFB05&#039;<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;st&#039;<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string-property property\">&#039;\\\\uFB06&#039;<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">&#039;ft&#039;<\/span><span class=\"token punctuation\">,<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p><span class=\"token comment\">\/\/ \u4e1a\u52a1\u6298\u53e0\u952e&#xff1a;\u786e\u5b9a\u3001locale \u65e0\u5173\u3001\u8de8\u7aef\u53ef\u590d\u73b0<\/span><br \/>\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">caseFoldKey<\/span><span class=\"token punctuation\">(<\/span><span class=\"token parameter\">s<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n  <span class=\"token keyword\">return<\/span> s<br \/>\n    <span class=\"token punctuation\">.<\/span><span class=\"token function\">normalize<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">&#039;NFC&#039;<\/span><span class=\"token punctuation\">)<\/span>                  <span class=\"token comment\">\/\/ \u5148\u628a\u5206\u89e3\u5f0f\u5408\u6210&#xff0c;\u907f\u514d \u00e0 \u4e0e a&#043;U&#043;0300 \u5206\u5bb6<\/span><br \/>\n    <span class=\"token punctuation\">.<\/span><span class=\"token function\">toLowerCase<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span>                    <span class=\"token comment\">\/\/ \u9ed8\u8ba4&#xff08;locale \u65e0\u5173&#xff09;\u53e3\u5f84\u7684\u5927\u5199\u2192\u5c0f\u5199<\/span><br \/>\n    <span class=\"token punctuation\">.<\/span><span class=\"token function\">replace<\/span><span class=\"token punctuation\">(<\/span><span class=\"token regex\"><span class=\"token regex-delimiter\">\/<\/span><span class=\"token regex-source language-regex\">[\\\\uFB00-\\\\uFB06]<\/span><span class=\"token regex-delimiter\">\/<\/span><span class=\"token regex-flags\">g<\/span><\/span><span class=\"token punctuation\">,<\/span> <span class=\"token parameter\">m<\/span> <span class=\"token operator\">&#061;&gt;<\/span> <span class=\"token constant\">LIGATURES<\/span><span class=\"token punctuation\">[<\/span>m<span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token comment\">\/\/ \u8fde\u5b57\u5c55\u5f00&#xff1a;toLowerCase \u4e0d\u5c55\u5f00\u5df2\u7ecf\u662f\u5c0f\u5199\u7684\u8fde\u5b57<\/span><br \/>\n    <span class=\"token punctuation\">.<\/span><span class=\"token function\">replace<\/span><span class=\"token punctuation\">(<\/span><span class=\"token regex\"><span class=\"token regex-delimiter\">\/<\/span><span class=\"token regex-source language-regex\">\\\\u00DF<\/span><span class=\"token regex-delimiter\">\/<\/span><span class=\"token regex-flags\">g<\/span><\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">&#039;ss&#039;<\/span><span class=\"token punctuation\">)<\/span>         <span class=\"token comment\">\/\/ \u00df \u2192 ss&#xff08;\u5c0f\u5199\u5316\u4e0d\u4f1a\u66ff\u4f60\u505a&#xff09;<\/span><br \/>\n    <span class=\"token punctuation\">.<\/span><span class=\"token function\">replace<\/span><span class=\"token punctuation\">(<\/span><span class=\"token regex\"><span class=\"token regex-delimiter\">\/<\/span><span class=\"token regex-source language-regex\">[\\\\u0130\\\\u0131]<\/span><span class=\"token regex-delimiter\">\/<\/span><span class=\"token regex-flags\">g<\/span><\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">&#039;i&#039;<\/span><span class=\"token punctuation\">)<\/span>  <span class=\"token comment\">\/\/ \u0130 \u0131 \u2192 i&#xff1a;\u8de8\u8bed\u8a00\u5b9e\u4f53\u540d\u7684\u5e38\u89c1\u5206\u5bb6\u70b9<\/span><br \/>\n    <span class=\"token punctuation\">.<\/span><span class=\"token function\">replace<\/span><span class=\"token punctuation\">(<\/span><span class=\"token regex\"><span class=\"token regex-delimiter\">\/<\/span><span class=\"token regex-source language-regex\">\\\\u03C2<\/span><span class=\"token regex-delimiter\">\/<\/span><span class=\"token regex-flags\">g<\/span><\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">&#039;\\\\u03C3&#039;<\/span><span class=\"token punctuation\">)<\/span>     <span class=\"token comment\">\/\/ \u8bcd\u5c3e \u03c2 \u2192 \u03c3<\/span><br \/>\n    <span class=\"token punctuation\">.<\/span><span class=\"token function\">normalize<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">&#039;NFC&#039;<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>                <span class=\"token comment\">\/\/ \u66ff\u6362\u4e4b\u540e\u518d\u5408\u6210\u4e00\u6b21&#xff0c;\u9632\u6b62\u66ff\u6362\u5f15\u5165\u5206\u89e3\u5f0f<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u9996\u5b57\u6bcd\u5927\u5199&#xff1a;\u6309\u7801\u70b9\u8d70&#xff0c;\u522b\u6309\u4e0b\u6807\u3002<\/p>\n<p><span class=\"token keyword\">function<\/span> <span class=\"token function\">titleCase<\/span><span class=\"token punctuation\">(<\/span><span class=\"token parameter\">firstUpperRest<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n  <span class=\"token keyword\">const<\/span> cps <span class=\"token operator\">&#061;<\/span> Array<span class=\"token punctuation\">.<\/span><span class=\"token function\">from<\/span><span class=\"token punctuation\">(<\/span>firstUpperRest<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>            <span class=\"token comment\">\/\/ \u7801\u70b9\u6570\u7ec4&#xff0c;\u4ee3\u7406\u5bf9\u4e0d\u4f1a\u88ab\u5207\u5f00<\/span><br \/>\n  <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>cps<span class=\"token punctuation\">.<\/span>length <span class=\"token operator\">&#061;&#061;&#061;<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token keyword\">return<\/span> <span class=\"token string\">&#039;&#039;<\/span><span class=\"token punctuation\">;<\/span><br \/>\n  <span class=\"token keyword\">const<\/span> head <span class=\"token operator\">&#061;<\/span> cps<span class=\"token punctuation\">[<\/span><span class=\"token number\">0<\/span><span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">.<\/span><span class=\"token function\">toUpperCase<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>                  <span class=\"token comment\">\/\/ \u65e0\u6620\u5c04\u65f6\u8fd4\u56de\u539f\u6837&#xff0c;\u4e0d\u4f1a\u635f\u574f<\/span><br \/>\n  <span class=\"token keyword\">const<\/span> tail <span class=\"token operator\">&#061;<\/span> cps<span class=\"token punctuation\">.<\/span><span class=\"token function\">slice<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">1<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">.<\/span><span class=\"token function\">join<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">&#039;&#039;<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">.<\/span><span class=\"token function\">toLowerCase<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n  <span class=\"token keyword\">return<\/span> head <span class=\"token operator\">&#043;<\/span> tail<span class=\"token punctuation\">;<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><br \/>\n<span class=\"token comment\">\/\/ \u9700\u8981\u771f\u6b63\u300c\u8bcd\u300d\u7ea7\u7684 Title Case \u65f6&#xff0c;\u7528 Intl.Segmenter \u6309\u5b57\u7d20\u5207&#xff1a;<\/span><br \/>\n<span class=\"token comment\">\/\/ &#039;\u00e1&#039;(a&#043;U&#043;0301) \u662f 1 \u4e2a\u5b57\u7d20\u30012 \u4e2a\u7801\u5143&#xff1b;&#039;&#x1f1e8;&#x1f1f3;&#039; \u662f 1 \u4e2a\u5b57\u7d20\u30014 \u4e2a\u7801\u5143<\/span><\/p>\n<p>\u81ea\u68c0\u51fd\u6570&#xff1a;\u628a\u300c\u9759\u9ed8\u7a7a\u64cd\u4f5c\u300d\u548c\u300c\u957f\u5ea6\u53d8\u5316\u300d\u90fd\u91cf\u51fa\u6765&#xff0c;\u7528\u6765\u5728\u4e0a\u7ebf\u524d\u77e5\u9053\u8fd9\u6279\u6570\u636e\u91cc\u6709\u591a\u5c11\u6761\u4f1a\u767d\u8dd1\u3002<\/p>\n<p><span class=\"token keyword\">function<\/span> <span class=\"token function\">caseAudit<\/span><span class=\"token punctuation\">(<\/span><span class=\"token parameter\">rows<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n  <span class=\"token keyword\">const<\/span> rep <span class=\"token operator\">&#061;<\/span> <span class=\"token punctuation\">{<\/span> <span class=\"token literal-property property\">lenChanged<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">inertUpper<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">inertLower<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">localeRisk<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token literal-property property\">nonBmp<\/span><span class=\"token operator\">:<\/span> <span class=\"token number\">0<\/span> <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">;<\/span><br \/>\n  <span class=\"token keyword\">const<\/span> risky <span class=\"token operator\">&#061;<\/span> <span class=\"token regex\"><span class=\"token regex-delimiter\">\/<\/span><span class=\"token regex-source language-regex\">[\\\\u0130\\\\u0131Ii]<\/span><span class=\"token regex-delimiter\">\/<\/span><\/span><span class=\"token punctuation\">;<\/span>                 <span class=\"token comment\">\/\/ i \u5bb6\u65cf&#xff1a;locale \u654f\u611f\u533a<\/span><br \/>\n  <span class=\"token keyword\">for<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">const<\/span> s <span class=\"token keyword\">of<\/span> rows<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>s<span class=\"token punctuation\">.<\/span><span class=\"token function\">toUpperCase<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">.<\/span>length <span class=\"token operator\">!&#061;&#061;<\/span> s<span class=\"token punctuation\">.<\/span>length <span class=\"token operator\">||<\/span> s<span class=\"token punctuation\">.<\/span><span class=\"token function\">toLowerCase<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">.<\/span>length <span class=\"token operator\">!&#061;&#061;<\/span> s<span class=\"token punctuation\">.<\/span>length<span class=\"token punctuation\">)<\/span> rep<span class=\"token punctuation\">.<\/span>lenChanged<span class=\"token operator\">&#043;&#043;<\/span><span class=\"token punctuation\">;<\/span><br \/>\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>s<span class=\"token punctuation\">.<\/span><span class=\"token function\">toUpperCase<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">&#061;&#061;&#061;<\/span> s<span class=\"token punctuation\">)<\/span> rep<span class=\"token punctuation\">.<\/span>inertUpper<span class=\"token operator\">&#043;&#043;<\/span><span class=\"token punctuation\">;<\/span><br \/>\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>s<span class=\"token punctuation\">.<\/span><span class=\"token function\">toLowerCase<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">&#061;&#061;&#061;<\/span> s<span class=\"token punctuation\">)<\/span> rep<span class=\"token punctuation\">.<\/span>inertLower<span class=\"token operator\">&#043;&#043;<\/span><span class=\"token punctuation\">;<\/span><br \/>\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>risky<span class=\"token punctuation\">.<\/span><span class=\"token function\">test<\/span><span class=\"token punctuation\">(<\/span>s<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span> rep<span class=\"token punctuation\">.<\/span>localeRisk<span class=\"token operator\">&#043;&#043;<\/span><span class=\"token punctuation\">;<\/span><br \/>\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">[<\/span><span class=\"token operator\">&#8230;<\/span>s<span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">.<\/span><span class=\"token function\">some<\/span><span class=\"token punctuation\">(<\/span><span class=\"token parameter\">c<\/span> <span class=\"token operator\">&#061;&gt;<\/span> c<span class=\"token punctuation\">.<\/span><span class=\"token function\">codePointAt<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">0<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">&gt;<\/span> <span class=\"token number\">0xFFFF<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span> rep<span class=\"token punctuation\">.<\/span>nonBmp<span class=\"token operator\">&#043;&#043;<\/span><span class=\"token punctuation\">;<\/span><br \/>\n  <span class=\"token punctuation\">}<\/span><br \/>\n  <span class=\"token keyword\">return<\/span> rep<span class=\"token punctuation\">;<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u5728\u672c\u6587\u90a3\u4efd 14 \u884c\u540d\u5355\u4e0a\u8dd1 caseAudit&#xff0c;\u5b9e\u6d4b\u843d\u70b9\u662f lenChanged&#061;4&#xff08;stra\u00dfe\u3001Stra\u00dfe\u3001\u0130stanbul\u3001\ufb01le \u8fd9\u56db\u884c\u4f1a\u56e0\u5927\u5c0f\u5199\u5316\u6539\u53d8\u7801\u5143\u6570\u2014\u2014\u524d\u4e09\u884c\u5206\u522b\u9760 \u00df\u2192SS \u4e0e \u0130\u2192i&#043;U&#043;0307&#xff0c;\u7b2c\u56db\u884c\u9760 \ufb01\u2192FI&#xff09;\u3001inertUpper&#061;3\u3001inertLower&#061;8\u3001localeRisk&#061;6&#xff08;\u56db\u884c\u571f\u8033\u5176\u5199\u6cd5&#xff0c;\u52a0\u4e0a FILE\u3001file\u2014\u2014\u5224\u5b9a\u5f0f\u91cc\u53ea\u8981\u51fa\u73b0 I \u6216 i \u5c31\u7b97\u98ce\u9669\u884c&#xff0c;\u53d6\u5411\u662f\u5b81\u591a\u52ff\u5c11&#xff09;\u3001nonBmp&#061;0\u3002\u7ed3\u8bba\u662f\u8fd9\u6279\u6570\u636e\u7684\u4e3b\u8981\u98ce\u9669\u65e2\u4e0d\u5728\u957f\u5ea6\u4e5f\u4e0d\u5728\u975e BMP&#xff0c;\u800c\u5728\u6298\u53e0\u952e\u4e0e locale&#xff1b;lenChanged&#061;4 \u6bd4\u76f4\u89c9\u7684 1 \u884c\u591a\u51fa\u4e00\u500d&#xff0c;\u56e0\u4e3a\u591a\u6570\u4eba\u4f1a\u5fd8\u8bb0 stra\u00dfe \u8fd9\u7c7b\u4e32\u5728\u5927\u5199\u5316\u65b9\u5411\u4e5f\u4f1a\u53d8\u957f\u3002<\/p>\n<h3>\u4e5d\u3001\u5bf9\u7167\u73b0\u573a<\/h3>\n<p>\u8fd9\u4e9b\u5206\u6b67\u6211\u662f\u4e00\u8fb9\u5728 \u5927\u5c0f\u5199\u8f6c\u6362 \u4e0a\u624b\u586b\u3001\u4e00\u8fb9\u628a\u5b83\u7684\u8f6c\u6362\u51fd\u6570\u9010\u5b57\u62bd\u51fa\u6765\u5728 Node \u91cc\u590d\u6838\u7684\u3002\u5b83\u628a\u300c7 \u79cd\u6a21\u5f0f\u300d\u5e73\u94fa\u5728\u540c\u4e00\u5c4f&#xff0c;\u597d\u5904\u662f\u80fd\u4e00\u6b21\u770b\u5230\u540c\u4e00\u4efd\u8f93\u5165\u5728\u4e0d\u540c\u53e3\u5f84\u4e0b\u7684\u8f93\u51fa\u5e76\u6392\u6446\u7740&#xff1a;\u0130stanbul \u90a3\u884c\u5728\u5c0f\u5199\u5316\u6a21\u5f0f\u4e0b\u591a\u51fa\u7684\u7ec4\u5408\u7b26\u3001a&#xff21;b \u90a3\u884c\u91cc\u88ab\u987a\u624b\u5c0f\u5199\u5316\u7684\u5168\u89d2\u5b57\u6bcd\u3001BOM \u6216\u5168\u89d2\u7a7a\u683c\u88ab\u5224\u6210\u7a7a\u8f93\u5165\u65f6\u90a3\u79cd\u300c\u4ec0\u4e48\u90fd\u6ca1\u53d1\u751f\u300d\u7684\u6837\u5b50&#xff0c;\u90fd\u662f\u8089\u773c\u53ef\u6bd4\u7684\u3002\u8981\u6ce8\u610f\u7684\u662f\u5b83\u53ea\u7ed9\u7ed3\u679c\u3001\u4e0d\u7ed9\u5224\u636e&#xff1a;\u8fd9\u4e00\u9875\u7684 Title Case \u4f1a\u628a\u8bcd\u5185\u5176\u4f59\u5b57\u6bcd\u4e00\u5f8b\u5c0f\u5199\u5316&#xff0c;\u6240\u4ee5 HTTPServer \u4e4b\u7c7b\u7684\u5199\u6cd5\u5728\u8fd9\u91cc\u4ece\u6765\u4e0d\u662f\u300c\u539f\u6837\u4fdd\u7559\u9996\u5b57\u6bcd\u5927\u5199\u300d\u7684\u8bed\u4e49&#xff1b;\u90a3\u90e8\u5206\u5c5e\u4e8e\u5207\u8bcd\u4e0e\u5f80\u8fd4\u884c\u4e3a\u7684\u8bdd\u9898&#xff0c;\u672c\u6587\u7684\u7126\u70b9\u662f\u5b57\u7b26\u5c42\u7684\u6620\u5c04\u672c\u8eab&#xff0c;\u4e0d\u91cd\u590d\u5c55\u5f00\u3002<\/p>\n<h3>\u9a8c\u6536\u6e05\u5355<\/h3>\n<li>\u522b\u95ee\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u600e\u4e48\u505a\u300d&#xff0c;\u5148\u95ee\u300c\u54ea\u51e0\u79cd\u5199\u6cd5\u7b97\u540c\u4e00\u6761\u300d&#xff1a;\u540c\u4e00\u4efd 14 \u884c\u540d\u5355&#xff0c;\u539f\u6837 14\u3001\u5c0f\u5199\u952e 9\u3001Collator 7\u3001\u5927\u5199\u952e 5\u3001\u663e\u5f0f\u6298\u53e0 5&#xff0c;\u56db\u79cd\u7b54\u6848\u90fd\u4e0d\u62a5\u9519\u3002\u628a\u53e3\u5f84\u5199\u6210\u51fd\u6570\u5e76\u7559\u5728\u4ee3\u7801\u91cc&#xff0c;\u4e0d\u8981\u7559\u5728\u6ce8\u91ca\u91cc\u3002<\/li>\n<li>\u6298\u53e0\u952e\u5fc5\u987b\u5148 normalize(&#039;NFC&#039;) \u518d\u5927\u5c0f\u5199\u5316&#xff0c;\u66ff\u6362\u5b8c\u518d\u5408\u6210\u4e00\u6b21&#xff1b;\u00e0 \u4e0e a&#043;U&#043;0300 \u7ecf\u8fc7 toLowerCase \u4ecd\u7136\u4e0d\u76f8\u7b49&#xff08;\u5b9e\u6d4b\u53ea\u6620\u5c04\u57fa\u7840\u5b57\u6bcd&#xff0c;\u7ec4\u5408\u7b26\u539f\u6837&#xff09;\u3002<\/li>\n<li>\u4e0d\u8981\u6307\u671b toLowerCase \u5c55\u5f00\u8fde\u5b57\u6216\u66ff\u6362 \u00df&#xff1a;\u5df2\u7ecf\u662f\u5c0f\u5199\u7684 \ufb01\u3001\u00df \u8d70\u5c0f\u5199\u5316\u662f\u7a7a\u64cd\u4f5c&#xff0c;\u5fc5\u987b\u663e\u5f0f\u5217\u8fdb\u6298\u53e0\u8868&#xff08;\ufb00 \ufb01 \ufb02 \ufb03 \ufb04 \ufb05 \ufb06\u3001\u00df\u2192ss\u3001\u03c2\u2192\u03c3\u3001\u0130\/\u0131\u2192i&#xff09;\u3002<\/li>\n<li>\u4efb\u4f55\u6309\u300c\u8f6c\u6362\u524d\u540e\u957f\u5ea6\u5b88\u6052\u300d\u5199\u7684\u4ee3\u7801\u90fd\u8981\u91cd\u67e5&#xff1a;32 \u4e2a\u6837\u672c\u91cc 7 \u4e2a\u957f\u5ea6\u4f1a\u53d8&#xff0c;\u65b9\u5411\u6709\u589e&#xff08;\u0390 1\u21923 \u7801\u5143\u3001\u0130 \u5c0f\u5199\u5316 1\u21922&#xff09;\u4e5f\u6709\u51cf&#xff08;\ufb03 \u5c0f\u5199\u5316 3\u21921&#xff09;&#xff0c;\u4e14 \ufb01 \u7684\u7801\u5143\u6570\u4e0e\u5b57\u8282\u6570\u53d8\u5316\u65b9\u5411\u76f8\u53cd\u3002\u6570\u636e\u5e93\u5217\u5bbd\u3001\u7f13\u51b2\u533a\u3001\u6309\u7801\u5143\u4e0b\u6807\u7684\u5207\u7247\u90fd\u5c5e\u4e8e\u8fd9\u4e00\u7c7b\u3002<\/li>\n<li>\u5224\u5b9a\u300c\u8f6c\u6362\u662f\u5426\u751f\u6548\u300d\u4e0d\u8981\u7528\u300c\u8f93\u51fa\u7b49\u4e8e\u8f93\u5165\u300d\u5f53\u8bc1\u636e&#xff1a;34 \u4e2a\u6837\u672c\u91cc 6 \u4e2a\u53cc\u5411\u60f0\u6027&#xff08;&#x1d400; \u2116 \u337f 1 \u4e2d \u1d6b&#xff09;&#xff0c;\u300c\u672c\u6765\u5c31\u5168\u5927\u5199\u300d\u4e0e\u300c\u6839\u672c\u6ca1\u6709\u6620\u5c04\u300d\u8f93\u51fa\u5b8c\u5168\u540c\u5f62&#xff1b;\u8981\u65ad\u8a00&#xff0c;\u8bf7\u65ad\u8a00\u7801\u70b9\u5c42\u9762\u7684\u6620\u5c04\u5b58\u5728\u6027\u3002<\/li>\n<li>\u4f4d\u7f6e\u654f\u611f\u6620\u5c04\u8981\u5199\u8fdb\u6d4b\u8bd5&#xff1a;\u039f\u0394\u039f\u03a3\u2192\u03bf\u03b4\u03bf\u03c2&#xff08;\u8bcd\u5c3e \u03c2&#xff09;\u3001\u03a3\u03a3\u03a3\u2192\u03c3\u03c3\u03c2\u3001\u0391\u0392\u03a3 \u0393\u0394\u2192\u03b1\u03b2\u03c2 \u03b3\u03b4&#xff0c;\u5e76\u77e5\u9053\u300c\u5c0f\u5199\u5316\u4e00\u904d\u518d\u6bd4\u5bf9\u300d\u8fd9\u79cd\u5e42\u7b49\u65ad\u8a00\u5728\u5b83\u4eec\u8eab\u4e0a\u4f1a\u5047\u5931\u8d25\u3002<\/li>\n<li>\u952e\u3001ID\u3001\u6587\u4ef6\u540d\u3001\u8def\u5f84\u4e00\u5f8b\u7528 locale \u65e0\u5173\u7684 toLowerCase\/toUpperCase&#xff1b;toLocale* \u53ea\u5728\u5c55\u793a\u5c42\u7528&#xff0c;\u4e14\u5fc5\u987b\u663e\u5f0f\u4f20 locale\u3002\u5b9e\u6d4b &#039;I&#039;.toLocaleLowerCase(&#039;tr&#039;)&#061;\u0131\u3001&#039;i&#039;.toLocaleUpperCase(&#039;az&#039;)&#061;\u0130\u3001fileID\u2192file\u0131d&#xff1b;\u4e0d\u4f20\u53c2\u65f6\u8ddf\u968f\u5b9e\u73b0\u89e3\u6790\u7684\u9ed8\u8ba4 locale&#xff0c;\u672c\u673a\u4e09\u79cd\u73af\u5883\u53d8\u91cf\u90fd\u6ca1\u80fd\u6539\u52a8\u5b83&#xff0c;\u8bf4\u660e\u8fd9\u6761\u8def\u65e0\u6cd5\u5728\u672c\u5730\u590d\u73b0&#xff0c;\u53ea\u80fd\u663e\u5f0f\u6307\u5b9a\u3002<\/li>\n<li>\u9996\u5b57\u6bcd\u5927\u5199\u7528\u7801\u70b9\u6216\u5b57\u7d20&#xff0c;\u4e0d\u7528 charAt(0) &#043; slice(1)&#xff1a;\u5b9e\u6d4b Deseret\u3001Adlam\u3001Vithkuqi \u4e09\u7ec4\u975e BMP \u5c0f\u5199\u8bcd\u7684\u9996\u5b57\u6bcd\u5728\u7801\u5143\u7248\u91cc\u6574\u6b65\u6ca1\u505a&#xff08;\u8f93\u51fa\u4e0e\u8f93\u5165\u540c\u5f62&#xff09;&#xff0c;\u7801\u70b9\u7248\u6b63\u786e&#xff1b;\u5168\u4e32 toUpperCase() \u4e5f\u6b63\u786e\u3002<\/li>\n<li>\u5927\u5c0f\u5199\u76f8\u5173\u7684\u6b63\u5219\u7528 Unicode \u5c5e\u6027\u7c7b&#xff1a;\/[A-Z]\/ \u5bf9 \u03a9\u00c0\u00df\u01c5\u0130&#x1d400; \u547d\u4e2d 0 \u4e2a&#xff0c;\/\\\\p{Lu}\/u \u547d\u4e2d 3 \u4e2a&#xff1b;\u300c\u4ec0\u4e48\u7b97\u5c0f\u5199\u7d27\u8ddf\u5927\u5199\u300d\u5728 13 \u6761\u6837\u672c\u4e0a\u6709 6 \u6761\u4e24\u7248\u4e0d\u4e00\u81f4\u3002<\/li>\n<li>\u300c\u7a7a\u8f93\u5165\u300d\u7684\u5224\u636e\u8981\u663e\u5f0f\u5199\u6e05&#xff1a;trim() \u8ba4 BOM&#xff08;U&#043;FEFF&#xff09;\u4e0e\u5168\u89d2\u7a7a\u683c&#xff08;U&#043;3000&#xff09;\u4e3a\u7a7a\u767d&#xff0c;\u6240\u4ee5\u300c\u770b\u5f97\u5230\u5b57\u7b26\u300d\u7684\u8f93\u5165\u4f1a\u88ab\u5224\u7a7a&#xff1b;\u53cd\u4e4b\u96f6\u5bbd\u7a7a\u683c U&#043;200B \u4e0d\u88ab trim \u4e5f\u4e0d\u88ab \/\\\\s&#043;\/ \u5207&#xff0c;\u4f1a\u4e00\u8def\u6d3b\u5230\u8f93\u51fa\u3002\u4e24\u8005\u90fd\u8981\u5355\u72ec\u6d4b\u3002<\/li>\n<li>\u540c\u4e00\u5c4f\u91cc\u7684\u4e0d\u540c\u6a21\u5f0f\u53ef\u80fd\u8d70\u4e0d\u540c\u5206\u652f&#xff1a;\u76f4\u63a5\u5927\u5c0f\u5199\u5316\u4e0d trim\u3001\u4e0d\u5408\u5e76\u7a7a\u767d&#xff08;17 \u5b57\u8282\u539f\u6837\u5e26\u9996\u5c3e\u7a7a\u683c&#xff09;&#xff0c;\u4f9d\u8d56\u5207\u8bcd\u7684\u6a21\u5f0f\u4f1a trim \u5e76\u5408\u5e76&#xff08;\u540c\u4e00\u8f93\u5165\u5269 10\u201311 \u5b57\u8282&#xff09;\u3002\u8de8\u6a21\u5f0f\u590d\u5236\u7c98\u8d34\u524d\u5148\u786e\u8ba4\u8d70\u7684\u662f\u54ea\u4e00\u8def\u3002<\/li>\n<li>\u5927\u8f93\u5165\u6ca1\u6709\u62a4\u680f&#xff1a;20 \u4e07\u5b57\u7b26\u7ea7&#xff08;\u5b9e\u6d4b 200000 \u5b57\u7b26 11 ms\u300140001 \u4e2a\u8bcd&#xff09;\u4e0d\u4f1a\u5931\u8d25\u4e5f\u4e0d\u4f1a\u63d0\u793a&#xff0c;\u6240\u4ee5\u300c\u8dd1\u5f97\u5feb\u300d\u4e0d\u7b49\u4e8e\u300c\u6309\u4f60\u60f3\u8981\u7684\u89c4\u5219\u8dd1\u300d&#xff1b;\u6279\u91cf\u6570\u636e\u4e0a\u7ebf\u524d\u7528\u7b2c\u516b\u8282\u90a3\u4e2a caseAudit \u51fa\u4e00\u4efd\u5206\u5e03&#xff0c;\u518d\u51b3\u5b9a\u6298\u53e0\u952e\u3002<\/li>\n","protected":false},"excerpt":{"rendered":"<p>\/* MD \/ \u5bcc\u6587\u672c\u4e2d\u7684 .toc\uff08\u542b\u535a\u5ba2\u56ed\u642c\u5bb6\u7b49\u5d4c\u5957\u7ed3\u6784\uff09\uff1b.toc-box \u5728\u4fa7\u680f\uff0c\u4e0d\u53d7\u5f71\u54cd *\/#content_views .toc,\/* \u7f16\u8f91\u5668\u5e38\u5728\u76ee\u5f55\u524d\u540e\u63d2\u5165\u7a7a p\uff08:empty \u4ecd\u5360 20px\uff09\uff0c\u4e00\u5e76\u53bb\u6389\u907f\u514d\u9876\u7a7a\u9699 *\/#content_views.markdown_views &gt; p:empty:has(+ .toc),#content_views.markdown_views &gt; .toc + p:empty,\/* \u5bcc\u6587\u672c\u65e7\u7248\u76ee\u5f55\u6807\u8bb0 *\/#content<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[99,50,100],"topic":[],"class_list":["post-122370","post","type-post","status-publish","format-standard","hentry","category-server","tag-java","tag-50","tag-100"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Stra\u00dfe \u548c Strasse \u5230\u5e95\u7b97\u4e0d\u7b97\u540c\u4e00\u5bb6\uff1a14 \u884c\u540d\u5355\u5728 5 \u79cd\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u53e3\u5f84\u4e0b\u7684\u91cd\u590d\u6570 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.wsisp.com\/helps\/122370.html\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Stra\u00dfe \u548c Strasse \u5230\u5e95\u7b97\u4e0d\u7b97\u540c\u4e00\u5bb6\uff1a14 \u884c\u540d\u5355\u5728 5 \u79cd\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u53e3\u5f84\u4e0b\u7684\u91cd\u590d\u6570 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"og:description\" content=\"\/* MD \/ \u5bcc\u6587\u672c\u4e2d\u7684 .toc\uff08\u542b\u535a\u5ba2\u56ed\u642c\u5bb6\u7b49\u5d4c\u5957\u7ed3\u6784\uff09\uff1b.toc-box \u5728\u4fa7\u680f\uff0c\u4e0d\u53d7\u5f71\u54cd *\/#content_views .toc,\/* \u7f16\u8f91\u5668\u5e38\u5728\u76ee\u5f55\u524d\u540e\u63d2\u5165\u7a7a p\uff08:empty \u4ecd\u5360 20px\uff09\uff0c\u4e00\u5e76\u53bb\u6389\u907f\u514d\u9876\u7a7a\u9699 *\/#content_views.markdown_views &gt; p:empty:has(+ .toc),#content_views.markdown_views &gt; .toc + p:empty,\/* \u5bcc\u6587\u672c\u65e7\u7248\u76ee\u5f55\u6807\u8bb0 *\/#content\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.wsisp.com\/helps\/122370.html\" \/>\n<meta property=\"og:site_name\" content=\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"article:published_time\" content=\"2026-11-04T12:18:10+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/122370.html\",\"url\":\"https:\/\/www.wsisp.com\/helps\/122370.html\",\"name\":\"Stra\u00dfe \u548c Strasse \u5230\u5e95\u7b97\u4e0d\u7b97\u540c\u4e00\u5bb6\uff1a14 \u884c\u540d\u5355\u5728 5 \u79cd\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u53e3\u5f84\u4e0b\u7684\u91cd\u590d\u6570 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"isPartOf\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\"},\"datePublished\":\"2026-11-04T12:18:10+00:00\",\"dateModified\":\"2026-11-04T12:18:10+00:00\",\"author\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/122370.html#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.wsisp.com\/helps\/122370.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/122370.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.wsisp.com\/helps\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Stra\u00dfe \u548c Strasse \u5230\u5e95\u7b97\u4e0d\u7b97\u540c\u4e00\u5bb6\uff1a14 \u884c\u540d\u5355\u5728 5 \u79cd\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u53e3\u5f84\u4e0b\u7684\u91cd\u590d\u6570\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\",\"url\":\"https:\/\/www.wsisp.com\/helps\/\",\"name\":\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"description\":\"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"contentUrl\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"caption\":\"admin\"},\"sameAs\":[\"http:\/\/wp.wsisp.com\"],\"url\":\"https:\/\/www.wsisp.com\/helps\/author\/admin\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Stra\u00dfe \u548c Strasse \u5230\u5e95\u7b97\u4e0d\u7b97\u540c\u4e00\u5bb6\uff1a14 \u884c\u540d\u5355\u5728 5 \u79cd\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u53e3\u5f84\u4e0b\u7684\u91cd\u590d\u6570 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.wsisp.com\/helps\/122370.html","og_locale":"zh_CN","og_type":"article","og_title":"Stra\u00dfe \u548c Strasse \u5230\u5e95\u7b97\u4e0d\u7b97\u540c\u4e00\u5bb6\uff1a14 \u884c\u540d\u5355\u5728 5 \u79cd\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u53e3\u5f84\u4e0b\u7684\u91cd\u590d\u6570 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","og_description":"\/* MD \/ \u5bcc\u6587\u672c\u4e2d\u7684 .toc\uff08\u542b\u535a\u5ba2\u56ed\u642c\u5bb6\u7b49\u5d4c\u5957\u7ed3\u6784\uff09\uff1b.toc-box \u5728\u4fa7\u680f\uff0c\u4e0d\u53d7\u5f71\u54cd *\/#content_views .toc,\/* \u7f16\u8f91\u5668\u5e38\u5728\u76ee\u5f55\u524d\u540e\u63d2\u5165\u7a7a p\uff08:empty \u4ecd\u5360 20px\uff09\uff0c\u4e00\u5e76\u53bb\u6389\u907f\u514d\u9876\u7a7a\u9699 *\/#content_views.markdown_views &gt; p:empty:has(+ .toc),#content_views.markdown_views &gt; .toc + p:empty,\/* \u5bcc\u6587\u672c\u65e7\u7248\u76ee\u5f55\u6807\u8bb0 *\/#content","og_url":"https:\/\/www.wsisp.com\/helps\/122370.html","og_site_name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","article_published_time":"2026-11-04T12:18:10+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"admin","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"8 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.wsisp.com\/helps\/122370.html","url":"https:\/\/www.wsisp.com\/helps\/122370.html","name":"Stra\u00dfe \u548c Strasse \u5230\u5e95\u7b97\u4e0d\u7b97\u540c\u4e00\u5bb6\uff1a14 \u884c\u540d\u5355\u5728 5 \u79cd\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u53e3\u5f84\u4e0b\u7684\u91cd\u590d\u6570 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","isPartOf":{"@id":"https:\/\/www.wsisp.com\/helps\/#website"},"datePublished":"2026-11-04T12:18:10+00:00","dateModified":"2026-11-04T12:18:10+00:00","author":{"@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41"},"breadcrumb":{"@id":"https:\/\/www.wsisp.com\/helps\/122370.html#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.wsisp.com\/helps\/122370.html"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.wsisp.com\/helps\/122370.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.wsisp.com\/helps"},{"@type":"ListItem","position":2,"name":"Stra\u00dfe \u548c Strasse \u5230\u5e95\u7b97\u4e0d\u7b97\u540c\u4e00\u5bb6\uff1a14 \u884c\u540d\u5355\u5728 5 \u79cd\u300c\u5ffd\u7565\u5927\u5c0f\u5199\u300d\u53e3\u5f84\u4e0b\u7684\u91cd\u590d\u6570"}]},{"@type":"WebSite","@id":"https:\/\/www.wsisp.com\/helps\/#website","url":"https:\/\/www.wsisp.com\/helps\/","name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","description":"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41","name":"admin","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/","url":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","contentUrl":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","caption":"admin"},"sameAs":["http:\/\/wp.wsisp.com"],"url":"https:\/\/www.wsisp.com\/helps\/author\/admin"}]}},"_links":{"self":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/122370","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/comments?post=122370"}],"version-history":[{"count":0,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/122370\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/media?parent=122370"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/categories?post=122370"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/tags?post=122370"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/topic?post=122370"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}