涉及到字符串解析的地方,就可能会碰到字符转义的情况。程序员如果不知道字符转义,那就不是合格的程序员。很多场合都需要对字符串中的特殊字符进行转义。
1. C/C++/JAVA等程序语言
字符串用双引号引起来,转义字符为反斜杠“\”。因为字符串是用双引号引起来的,所以字符串中出现的双引号必须转义,表示成:\"。为了表示反斜杠,反斜杠本身也必须转义,转义成:\\。另外,还可以通过转义字符来表示特殊字符,如:\r表示回车,\n表示换汇,\t表示TAB键等等。
2. SQL语句
SQL中的字段值(字符串),通常是用单引号“'”来引起来的。因此,字段值中出现的单引号必须转义。各种数据库的转义方法各不相同。对于mysql数据库,转义字符为反斜杠\;对于oracle,转义字符为单引号本身,即字符串中的两个连续的单引号表示一个单引号。
3. HTML
HTML中的标签用引起来,比如:、等等。如果显示的文本中包含,需要进行转义,转义成>。
4. URL
URL的多个参数之间使用&符号分隔,比如:。因此参数值中的&必须转义,另外空格等特殊字符也需要转义。转义方式为:%XX,其中XX为特殊字符的ASCII的十六进制字符表示。比如:p1=a%20%26&p2=ced