iOS HTML标签字符实体,转译字符串归类大全 【转载】

为什么要用转义字符串?

HTML中<,>,&等有特殊含义(<,>,用于链接签,&用于转义),不能直接使用。这些符号是不显示在我们最终看到的网页里的,那如果我们希望在网页中显示这些符号,该怎么办呢?

这就要说到HTML转义字符串(Escape Sequence)了。

转义字符串(Escape Sequence)也称字符实体(Character Entity)。在HTML中,定义转义字符串的原因有两个:

第一个原因是像“<”和“>”这类符号已经用来表示HTML标签,因此就不能直接当作文本中的符号来使用。为了在HTML文档中使用这些符号,就需要定义它的转义字符串。当解释程序遇到这类字符串时就把它解释为真实的字符。在输入转义字符串时,要严格遵守字母大小写的规则

第二个原因是,有些字符在ASCII字符集中没有定义,因此需要使用转义字符串来表示。

转义字符串的组成

转义字符串(Escape Sequence),即字符实体(Character Entity)分成三部分:

第一部分是一个&符号,英文叫ampersand;

第二部分是实体(Entity)名字或者是#加上实体(Entity)编号;

第三部分是一个分号。

比如,要显示小于号(<),就可以写 &lt; 或者 &#60; 。

用实体(Entity)名字的好处是比较好理解,一看lt,大概就猜出是less than的意思,但是其劣势在于并不是所有的浏览器都支持最新的Entity名字。而实体(Entity)编号,各种浏览器都能处理。

提示:实体名称(Entity)是区分大小写的

备注:同一个符号,可以用“实体名称”和“实体编号”两种方式引用,“实体名称”的优势在于便于记忆,但不能保证所有的浏览器都能顺利识别它,而“实体编号”则没有这种担忧,但它实在不方便记忆。

如何显示空格?

通常情况下,HTML会自动截去多余的空格。不管你加多少空格,都被看做一个空格。比如你在两个字之间加了10个空格,HTML会截去9个空格,只保留一个。为了在网页中增加空格,你可以使用&nbsp;表示空格。


HTML特殊转义字符列表

最常用的字符实体
Character Entities

显示说明实体名称实体编号
 半方大的空白&ensp;&#8194;
 全方大的空白&emsp;&#8195;
 不断行的空格&nbsp;&#160;
<小于&lt;&#60;
>大于&gt;&#62;
&&符号&amp;&#38;
"双引号&quot;&#34;
©版权&copy;&#169;
®已注册商标&reg;&#174;
商标(美国)&#8482;
×乘号&times;&#215;
÷除号&divide;&#247;

ISO 8859-1 (Latin-1)字符集

HTML 4.01 支持 ISO 8859-1 (Latin-1) 字符集。

备注:为了方便起见,以下表格中,“实体名称”简称为“名称”,“实体编号”简称为“编号”

显示名称编号显示名称编号显示名称编号显示名称编号显示名称编号
 &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;°&deg;&#176;±&plusmn;&#177;²&sup2;&#178;³&sup3;&#179;
´&acute;&#180;µ&micro;&#181;&para;&#182;·&middot;&#183;¸&cedil;&#184;
¹&sup1;&#185;º&ordm;&#186;»&raquo;&#187;¼&frac14;&#188;½&frac12;&#189;
¾&frac34;&#190;¿&iquest;&#191;À&Agrave;&#192;Á&Aacute;&#193;Â&Acirc;&#194;
Ã&Atilde;&#195;Ä&Auml;&#196;Å&Aring;&#197;Æ&AElig;&#198;Ç&Ccedil;&#199;
È&Egrave;&#200;É&Eacute;&#201;Ê&Ecirc;&#202;Ë&Euml;&#203;Ì&Igrave;&#204;
Í&Iacute;&#205;Î&Icirc;&#206;Ï&Iuml;&#207;Ð&ETH;&#208;Ñ&Ntilde;&#209;
Ò&Ograve;&#210;Ó&Oacute;&#211;Ô&Ocirc;&#212;Õ&Otilde;&#213;Ö&Ouml;&#214;
×&times;&#215;Ø&Oslash;&#216;Ù&Ugrave;&#217;Ú&Uacute;&#218;Û&Ucirc;&#219;
Ü&Uuml;&#220;Ý&Yacute;&#221;Þ&THORN;&#222;ß&szlig;&#223;à&agrave;&#224;
á&aacute;&#225;â&acirc;&#226;ã&atilde;&#227;ä&auml;&#228;å&aring;&#229;
æ&aelig;&#230;ç&ccedil;&#231;è&egrave;&#232;é&eacute;&#233;ê&ecirc;&#234;
ë&euml;&#235;ì&igrave;&#236;í&iacute;&#237;î&icirc;&#238;ï&iuml;&#239;
ð&eth;&#240;ñ&ntilde;&#241;ò&ograve;&#242;ó&oacute;&#243;ô&ocirc;&#244;
õ&otilde;&#245;ö&ouml;&#246;÷&divide;&#247;ø&oslash;&#248;ù&ugrave;&#249;
ú&uacute;&#250;û&ucirc;&#251;ü&uuml;&#252;ý&yacute;&#253;þ&thorn;&#254;
ÿ&yuml;&#255;

数学和希腊字母标志
symbols, mathematical symbols, and Greek letters

显示名称编号显示名称编号显示名称编号显示名称编号显示名称编号
ƒ&fnof;&#402;Α&Alpha;&#913;Β&Beta;&#914;Γ&Gamma;&#915;Δ&Delta;&#916;
Ε&Epsilon;&#917;Ζ&Zeta;&#918;Η&Eta;&#919;Θ&Theta;&#920;Ι&Iota;&#921;
Κ&Kappa;&#922;Λ&Lambda;&#923;Μ&Mu;&#924;Ν&Nu;&#925;Ξ&Xi;&#926;
Ο&Omicron;&#927;Π&Pi;&#928;Ρ&Rho;&#929;Σ&Sigma;&#931;Τ&Tau;&#932;
Υ&Upsilon;&#933;Φ&Phi;&#934;Χ&Chi;&#935;Ψ&Psi;&#936;Ω&Omega;&#937;
α&alpha;&#945;β&beta;&#946;γ&gamma;&#947;δ&delta;&#948;ε&epsilon;&#949;
ζ&zeta;&#950;η&eta;&#951;θ&theta;&#952;ι&iota;&#953;κ&kappa;&#954;
λ&lambda;&#955;μ&mu;&#956;ν&nu;&#957;ξ&xi;&#958;ο&omicron;&#959;
π&pi;&#960;ρ&rho;&#961;ς&sigmaf;&#962;σ&sigma;&#963;τ&tau;&#964;
υ&upsilon;&#965;φ&phi;&#966;χ&chi;&#967;ψ&psi;&#968;ω&omega;&#969;
?&thetasym;&#977;?&upsih;&#978;?&piv;&#982;&bull;&#8226;&hellip;&#8230;
&prime;&#8242;&Prime;&#8243;&oline;&#8254;&frasl;&#8260;&weierp;&#8472;
&image;&#8465;&real;&#8476;&trade;&#8482;&alefsym;&#8501;&larr;&#8592;
&uarr;&#8593;&rarr;&#8594;&darr;&#8595;&harr;&#8596;&crarr;&#8629;
&lArr;&#8656;&uArr;&#8657;&rArr;&#8658;&dArr;&#8659;&hArr;&#8660;
&forall;&#8704;&part;&#8706;&exist;&#8707;&empty;&#8709;&nabla;&#8711;
&isin;&#8712;&notin;&#8713;&ni;&#8715;&prod;&#8719;&sum;&#8721;
&minus;&#8722;&lowast;&#8727;&radic;&#8730;&prop;&#8733;&infin;&#8734;
&ang;&#8736;&and;&#8743;&or;&#8744;&cap;&#8745;&cup;&#8746;
&int;&#8747;&there4;&#8756;&sim;&#8764;&cong;&#8773;&asymp;&#8776;
&ne;&#8800;&equiv;&#8801;&le;&#8804;&ge;&#8805;&sub;&#8834;
&sup;&#8835;&nsub;&#8836;&sube;&#8838;&supe;&#8839;&oplus;&#8853;
&otimes;&#8855;&perp;&#8869;&sdot;&#8901;?&lceil;&#8968;?&rceil;&#8969;
?&lfloor;&#8970;?&rfloor;&#8971;?&lang;&#9001;?&rang;&#9002;&loz;&#9674;
&spades;&#9824;&clubs;&#9827;&hearts;&#9829;&diams;&#9830;

重要的国际标记
markup-significant and internationalization characters

显示名称编号显示名称编号显示名称编号显示名称编号显示名称编号
"&quot;&#34;&&amp;&#38;<&lt;&#60;>&gt;&#62;Œ&OElig;&#338;
œ&oelig;&#339;Š&Scaron;&#352;š&scaron;&#353;Ÿ&Yuml;&#376;ˆ&circ;&#710;
˜&tilde;&#732;&ensp;&#8194;&emsp;&#8195;&thinsp;&#8201;&zwnj;&#8204;
&zwj;&#8205;&lrm;&#8206;&rlm;&#8207;&ndash;&#8211;&mdash;&#8212;
&lsquo;&#8216;&rsquo;&#8217;&sbquo;&#8218;&ldquo;&#8220;&rdquo;&#8221;
&bdquo;&#8222;&dagger;&#8224;&Dagger;&#8225;&permil;&#8240;&lsaquo;&#8249;
&rsaquo;&#8250;&euro;&#8364;

JavaScript转义符

转义序列字符
\b退格
\f走纸换页
\n换行
\r回车
\t横向跳格 (Ctrl-I)
\'单引号
\"双引号
\\反斜杠

编程的时候要注意特殊字符的问题,很多运行时出现的问题都是因为特殊字符的出现而引起的。

注意,由于反斜杠本身用作转义符,因此不能直接在脚本中键入一个反斜杠。如果要产生一个反斜杠,必须一起键入两个反斜杠 (\\)。


 

编码转换(to Unicode)

 

 

 

(程序代码来源于网络)

 

Js版

<script>test = "你好abc"str = ""for( i=0;    i<test.length; i++ ){temp = test.charCodeAt(i).toString(16);str    += "\\u"+ new Array(5-String(temp).length).join("0") +temp;}document.write (str)
</script>


vbs版


Function Unicode(str1)Dim str,tempstr = ""For i=1    to len(str1)temp = Hex(AscW(Mid(str1,i,1)))If len(temp) < 5 Then    temp = right("0000" & temp, 4)str = str & "\u" & tempNextUnicode = str
End Function


 

Function htmlentities(str)For i = 1 to Len(str)char = mid(str, i, 1)If Ascw(char) > 128 thenhtmlentities = htmlentities & "&#" & Ascw(char) & ";"Elsehtmlentities = htmlentities & charEnd ifNext
End Function

 

 

 

 

 

coldfusion

 

function nochaoscode(str)
{var new_str = “”;for(i=1; i lte len(str);i=i+1){if(asc(mid(str,i,1)) lt 128){new_str = new_str & mid(str,i,1);}else{new_str = new_str & “&##” & asc(mid(str,i,1));}}return new_str;
}

 


 

附:

在php中我们可以用mbstring的mb_convert_encoding函数实现这个正向及反向的转化。 如:

 

mb_convert_encoding ("你好", "HTML-ENTITIES", "gb2312"); //输出:&#20320;&#22909;

mb_convert_encoding ("&#20320;&#22909;", "gb2312", "HTML-ENTITIES"); //输出:你好

 

如果需要对整个页面转化,则只需要在php文件的头部加上这三行代码:

 

mb_internal_encoding("gb2312"); // 这里的gb2312是你网站原来的编码

mb_http_output("HTML-ENTITIES");

ob_start('mb_output_handler');

 

以上内容 声明:转载来自:http://www.cnblogs.com/lf6112/p/4952001.html

 

HTML的标签的过滤,欢迎指正~~~~

 1 #import <Foundation/Foundation.h>
 2 
 3 @interface filterHTML : NSObject
 4 //过滤
 5 /**
 6  * 过滤标签
 7  */
 8 +(NSString *)filterHTML:(NSString *)str;
 9 +(NSString *)filterHTMLImage:(NSString *)str;
10 /**
11  * 替换部分标签
12  */
13 + (NSString *)filterHTMLTag:(NSString *)str;
14 
15 
16 @end
过滤HTML标签的头文件
 1 #import "filterHTML.h"
 2 
 3 @implementation filterHTML
 4 
 5 /**
 6  * 过滤标签
 7  */
 8 +(NSString *)filterHTML:(NSString *)str
 9 {
10     NSScanner * scanner = [NSScanner scannerWithString:str];
11     NSString * text = nil;
12     while([scanner isAtEnd]==NO)
13     {
14         //找到标签的起始位置
15         [scanner scanUpToString:@"<" intoString:nil];
16         //找到标签的结束位置
17         [scanner scanUpToString:@">" intoString:&text];
18         //替换字符
19         str  =  [str  stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@"%@>",text] withString:@""];
20     }
21     return str;
22 }
23 +(NSString *)filterHTMLImage:(NSString *)str{
24     NSScanner * scanner = [NSScanner scannerWithString:str];
25     NSString * text = nil;
26     while([scanner isAtEnd]==NO)
27     {
28         //找到标签的起始位置
29         [scanner scanUpToString:@"<img" intoString:nil];
30         //找到标签的结束位置
31         [scanner scanUpToString:@">" intoString:&text];
32         //替换字符
33         str  =  [str  stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@"%@>",text] withString:@"【图片】"];
34     }
35     return str;
36 }
37 
38 + (NSString *)filterHTMLTag:(NSString *)str {
39     //替换字符
40     str  =  [str  stringByReplacingOccurrencesOfString:@"&mdash;" withString:@"-"];
41     str  =  [str  stringByReplacingOccurrencesOfString:@"&ldquo;" withString:@"\""];
42     str  =  [str  stringByReplacingOccurrencesOfString:@"&rdquo;" withString:@"\""];
43     str  =  [str  stringByReplacingOccurrencesOfString:@"&nbsp;" withString:@" "];
44     str  =  [str  stringByReplacingOccurrencesOfString:@"&rsquo;" withString:@""];
45     str  =  [str  stringByReplacingOccurrencesOfString:@"&lsquo;" withString:@""];
46     str  =  [str  stringByReplacingOccurrencesOfString:@"&middot;" withString:@"·"];
47     str  =  [str  stringByReplacingOccurrencesOfString:@"&quot;" withString:@"\""];
48     str  =  [str  stringByReplacingOccurrencesOfString:@"&amp;" withString:@"&"];
49     str  =  [str  stringByReplacingOccurrencesOfString:@"<strong>" withString:@""];
50     str  =  [str  stringByReplacingOccurrencesOfString:@"</strong>" withString:@""];
51     str  =  [str  stringByReplacingOccurrencesOfString:@"\n" withString:@" "];
52     return str;
53     
54 }
55 @end
过滤HTML标签的实现文件

 

 

转载于:https://www.cnblogs.com/Wild-orangutans/p/6524260.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/429563.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RT-Thread在github上的教程中图片显示不出来问题的解决方法

在github上查看RT-Thread STM32系列BSP制作教程时发现教程中所有的图片都加载不出来&#xff0c;非常影响教程的阅读使用。 使用记事本打开文件&#xff1a; C:\Windows\System32\drivers\etc\hosts 将如下内容复制粘贴到hosts文件末尾&#xff1a; # GitHub Start 140.82.11…

在STM32CubeMX生成的MDK5工程上添加RT-Thread Nano后双击工程名无法打开.map文件的解决方法

当我们基于STM32CubeMx完成芯片的基础配置&#xff0c;再将RT-Thread Nano添加到工程编译完成之后。双击工程名称发现无法打开工程的.map文件&#xff0c;.map文件是STM32开发中非常重要的一个文件&#xff0c;map文件中详细描述了各个函数在ROM中的存储地址和大小&#xff0c;…

STM32实现USB虚拟串口原理(下)

中断传输应用如主机定期间隔送鼠标读取当前的输入信息&#xff0c;或键盘的输入键值 同步传输应用于音视频等对延迟有严格要求的场合 大容量传输对实时性没有太高要求&#xff0c;对延迟有较大的容忍&#xff0c;且在协议层面并未规定最大的容忍延迟时间&#xff0c;但能从协议…

RT-Thread中堆和栈内存的分配

在嵌入式软件开发中&#xff0c;我们经常会提到堆和栈&#xff0c;实际上堆和栈都是RAM上的物理内存空间&#xff0c;只是使用方式不同而已。栈和堆都是单片机RAM中一段连续的存储空间&#xff0c;该段空间一般在启动文件或链接脚本中指定&#xff0c;最后在C库的_main函数中进…

RT-Thread Nano版本和RT-Thread Master版本的关系

RT-Thread Nano版本和RT-Thread Master版本的关系&#xff1a; RT-Thread Master版本不仅仅是一个实时内核&#xff0c;还包含了丰富的中间层组件。 RT-Thread Nano是RT-Thread Master之上进行剪裁后形成的精简版&#xff0c;去掉了一些组件和各种开发板的BSP&#xff0c;仅保…

VSCODE修改文字编码格式为GB2312和TAB键为2个空格(MDK5和VSCODE联合开发STM32程序)

在MDK5中&#xff0c;代码、变量等的高亮显示或代码自动补全做的不是很好&#xff0c;经常会出现在A函数中有变量的高亮功能&#xff0c;在B函数中就没有了。特别是在RT-Thread创建的多个线程中&#xff0c;发现同一文件中的其它函数中的变量都有同一变量高亮&#xff0c;在RT-…

IP选路

一、IP层工作流程 &#xfffc; 二、 简单路由表 输入netstate -rn&#xff0c;得到如下&#xfffc; 其中flag的标志如下 U 该路由可以使用G 该路由是到一个网管&#xff08;路由器&#xff09;&#xff0c;否则&#xff0c;说明目的地是直接相连的 该标志区分了间接路由和…

[转]微信小程序安全浅析

本文转自&#xff1a;http://blog.csdn.net/baize_security/article/details/54582854 引言 近期微信小程序重磅发布&#xff0c;在互联网界掀起不小的波澜&#xff0c;已有许多公司发布了自己的小程序&#xff0c;涉及不同的行业领域。大家在体验小程序用完即走便利的同时&…

STM32 MDK编译后生成的 .map文件深入分析

.map文件是STM32开发中非常重要的一个文件&#xff0c;在该文件中可以详细的查看单个文件、函数及用户定义的全局变量等的占用RAM和ROM&#xff08;一般为片内FLASH&#xff09;的空间大小&#xff0c;通过了解这些信息可以很方便的进行代码的优化。 在MDK5中&#xff0c;生成…

C#程序的组织结构

C#程序的组织结构&#xff1a; namespace&#xff08;命名空间&#xff09;&#xff1a; C#程序中的一种代码组织形式&#xff0c;主要用来标识类的可见范围。一个namespace中包含了一系列的类&#xff0c;一般一个文件中会使用多个using语句引入多个命名空间。 语法&#xff…

hihocoder1477 闰秒

地址&#xff1a;http://hihocoder.com/problemset/problem/1477 题目&#xff1a; 闰秒 时间限制:10000ms单点时限:1000ms内存限制:256MB描述 计算机系统中使用的UTC时间基于原子钟&#xff0c;这种计时方式同“地球自转一周是24小时”的计时方式有微小的偏差。为了弥补这种偏…

C#命名空间namespace中不能直接包含字段(变量)或方法(函数)之类的成员

C#命名空间即namespace中不能直接包含字段&#xff08;变量&#xff09;或方法&#xff08;函数&#xff09;之类的成员&#xff0c;须将字段或方法放到类class中&#xff0c;否则编译器会报错。 C#命名空间中不能直接定义字段&#xff08;变量&#xff09;&#xff1a; 将val…

Lucene实战之初体验

前言 最早做非结构化数据搜索时用的还是lucene.net&#xff0c;一直说在学习java的同时把lucene这块搞一搞&#xff0c;这拖了2年多了&#xff0c;终于开始搞这块了。 开发环境 idea2016、lucene6.0、jdk1.8 使用lucene准备条件 1、pom.xml 2、测试数据。 我从博客园首页拿了几…

C#中变量(成员变量、局部变量、全局变量)的作用域

不管在任何编程语言中都有变量的定义&#xff0c;变量就像是一个容器&#xff0c;不同的变量会在内存中占据不同大小的内存空间。定义变量后会将分配的地址绑定在这个变量名上&#xff0c;以后对该变量名的操作就是对该内存地上存储内容的操作。 namespace test {class myTest…

Servelt中的ServletContext对象

转载于:https://www.cnblogs.com/yxh-only/p/6548046.html

export function函数传参_从底层看前端(七)—— JavaScript到底有多少种函数?

在上篇文章中我们了解到了执行上下文是什么&#xff0c;也知道了任何语句的执行都会依赖特定的上下文。一旦上下文被切换&#xff0c;整个语句的效果可能都会发生变化。那么&#xff0c;切换上下文的时机就显得非常重要。在JavaScript中&#xff0c;切换上下文最主要的场景就是…

liunx常用命令0

1 开启Linux操作系统&#xff0c;要求以root用户登录GNOME图形界面&#xff0c;语言支持选择为汉语 点击“未列出&#xff1f;”-->输入root和密码 2 使用快捷键切换到虚拟终端2&#xff0c;使用普通用户身份登录&#xff0c;查看系统提示符 ctrlaltf2 3 使用命令退出虚拟终…

2个td合成一个td_18个月16个爆款,合成类玩法的下一个机会在哪?

18个月16个爆款&#xff01;近日&#xff0c;编者体验了近18个月爆款小程序榜单之中的游戏&#xff0c;体验之后编者发现&#xff0c;在这200多款游戏中&#xff0c;有16款都应用了合成类玩法&#xff0c;而且部分游戏是数次登榜&#xff0c;比如枪火工厂、全民养鲲、世界争霸等…

在线代码图片生成工具carbon

在日常工作中时常需要和同事间进行代码的沟通和交流&#xff0c;有时只是需要讨论某一段代码的内容&#xff0c;因此不必将整个文件发给同事。通常可以将部分代码进行截图&#xff0c;或者直接将部分代码复制粘贴发送给同事。但以上方法或因为代码太长需要多次截图&#xff0c;…