首页  :: 新随笔  :: 管理

HTML/Mysql/XML 转义字符,备查

Posted on 2012-01-26 13:21  季枫  阅读(2833)  评论(0编辑  收藏  举报
mysql识别下列转义字符: 

\0 
一个ascii 0 (nul)字符。 
\n 
一个新行符。 
\t 
一个定位符。 
\r 
一个回车符。 
\b 
一个退格符。 
\' 
一个单引号(“'”)符。 
\ " 
一个双引号(“ "”)符。 
\\ 
一个反斜线(“\”)符。 
\% 
一个“%”符。它用于在正文中搜索“%”的文字实例,否则这里“%”将解释为一个通配符。 
\_ 
一个“_”符。它用于在正文中搜索“_”的文字实例,否则这里“_”将解释为一个通配符。 
注意,如果你在某些正文环境中使用“\%”或“\%_”,这些将返回字符串“\%”和“\_”而不是“%”和“_”。 
★★ 
有几种方法在一个字符串内包括引号: 
1、必须转义的: 
一个字符串用单引号“'”来引用的,该字符串中的单引号“'”字符可以用“''”方式转义。 
一个字符串用双引号“ "”来引用的,该字符串中的“ "”字符可以用“ " "”方式转义。 
同时你也可以继续使用一个转义字符“\”来转义 
2、可不转义的: 
一个字符串用双引号“ "”来引用的,该字符串中的单引号“'”不需要特殊对待而且不必被重复或转义。 
同理, 
一个字符串用单引号“'”来引用的,该字符串中的双引号“ "”不需要特殊对待而且不必被重复或转义。 
下面显示的select演示引号和转义如何工作: 
mysql > select 'hello', ' "hello "', ' " "hello " "', 'hel''lo', '\'hello'; 
+----------+--------------+-------------------+----------+---------+ 
hello "hello " " "hello " " hel'lo 'hello 
+----------+--------------+-------------------+----------+---------+ 
mysql > select "hello ", "'hello' ", "''hello'' ", "hel " "lo ", "\ "hello " 
+----------+----------+-----------+------------+-----------+ 
hello 'hello' ''hello'' hel "lo "hello 
+---------+-----------+-----------+------------+-----------+ 
mysql > select "this\nis\nfour\nlines "; 
+--------------------+ 
this 
is 
four 
lines 
+--------------------+ 
★★ 
如果你想要把二进制数据插入到一个blob列,下列字符必须由转义序列表示: 
nul 
ascii 0。你应该用'\0'(一个反斜线和一个ascii '0')表示它。 
ascii 92,反斜线。用'\\'表示。 
ascii 39,单引号。用“\'”表示。 
" 
ascii 34,双引号。用“\ "”表示。

HTML中的转义字符

  HTML中<, >,&等有特殊含义,(前两个字符用于链接签,&用于转义),不能直接使用。使用这三个字符时,应使用它们的转义序列,如下所示:

&amp; 或 &

&

&lt; 或 <

<

 

 

小于号

&gt; 或 >

>

 

 

大于号

&quot;

"

双引号

 

&nbsp;

 

 

 

空格

&copy;

©

版权符

&reg

®

 

 

注册符

  前者为字符转义序列,后者为数字转义序列。数字转为字符对应的ASCII码值。例如 & lt; font &gt;显示为,<font>,若直接写为则被认为是一个链接签。

  需要说明的是:

  a. 转义序列各字符间不能有空格;

  b. 转义序列必须以";"结束;

  c. 单独的&不被认为是转义开始;

  d.区分大小写。

  另一个需要转义的字符是引号,它的转义序列为"" "或"""

  HTML使用的字符集是ISO &859 Larin-1字符集,该字符集中有许多标准键盘上无法输入的字符。对这些特殊字符只能使用转义序列。

  XML转义字符

  不合法的XML字符必须被替换为相应的实体。

  如果在XML文档中使用类似"<" 的字符, 那么解析器将会出现错误,因为解析器会认为这是一个新元素的开始。所以不应该像下面那样书写代码:

<message>if salary < 1000 then</message>

  为了避免出现这种情况,必须将字符"<" 转换成实体,像下面这样:

<message>if salary &lt; 1000 then</message>

  下面是五个在XML文档中预定义好的实体:

&lt;

<

 

 

小于号

&gt;

>

 

 

大于号

&amp;

&

&apos;

'

单引号

&quot;

"

双引号

  实体必须以符号"&"开头,以符号";"结尾。

  注意: 只有"<" 字符和"&"字符对于XML来说是严格禁止使用的。剩下的都是合法的,为了减少出错,使用实体是一个好习惯

智读 | 成都会领科技有限公司官网 | 智读App下载 | 每天听本书的博客 | |