`
maosuhan
  • 浏览: 111700 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

字符串的转义种种

阅读更多

在编程里,转义字符指有特殊意味的字符。

在中文中,也有转义一说,如“社稷”一词,古人称土神为“社”,“稷”为五谷之长,立稷而祭,以稷为谷神。古时天子、诸侯都要祭祀社稷,后来就以“社稷”一词称国家。又如“齿”是牙齿,年龄也称年齿。人以年齿相比列,凡不能比次在一起,非同一类的就说“不齿”。

在编程里面,也有转义一说。你可以翻阅ascii表,你会发现里面有好多很奇怪的字符,特别是刚开始排列的那些。

 

00 NUL 空 
01 SOH 标题开始 
02 STX 正文开始
03 ETX 正文结束
04 EOT 传输结否
05 ENQ 询问
06 ACK 确认
07 BEL 响铃
08 BS 退格
09 HT 横向列表
10 LF 换行
11 VT 纵向列表
12 FF 换页
13 CR 回车
14 SO 换档(Shift-Out)

上面写的那些其实都可以用转义字符来表示,比如\0就是空字符啊,\n就是换行啊,\t就是水平制表符啊。发现其实\还有n其实都是字符可以分开来解释,但是它们组合在一起就又有了新的意思了,就像“社”,“稷”,可以单独解释啊,但是合在一起就表示了另一个意思了,我想这就是转义的意思吧!也就是说解释器是一个字一个字地理解这个字符串的意思的,但是碰到像这些诡异的转义字符\xxx就要用另一个意思来理解了。

 

在html里面有转义的,你看在html里<和>是敏感词汇,那么就要用其他的意思来表示文本意义的“<”和“>”,也就是&lt;这个符号,包括空格在html里也是诡异的东东,同样也需要转义字符来代替,&nbsp;

 

在sql里面,双引号也是一个很敏感的字符,为了防止冲突就用\"来表示文本意思的双引号。

 

这里我们可以发现,转义出现的情况其实是这样的,当我们没有办法用普通的那些abcd1234的字符去表达某个玩意的时候,我们就要用到转义了。这个玩意可以是html里的文本意义上的空格或是><,也可能是sql里的双引号。于是转义就出现了,用普通的字符去表示特殊的意义。

 

比如说是url参数的转义,参数里面如果有&就会错误,必须转义成%xx的样子才行,空格也要转,加好也要转,就是这样。

 

但是呢,并不是说转义只是因为我们不能用常规方法表示,你看那个中文里的“不齿”,你用“不屑”也可以,“不齿”只是相当于一个别名而已。像html里 面,所有的文本意义的字母都是可以用转义表示的。

 

像“a”就可以用&#97 <script type="text/javascript">&lt;![CDATA[rw(&quot;J&quot;, ark7);]]&gt;</script> ;来表示“~”可以用&#126;表示。

分享到:
评论

相关推荐

    转义字符串的一些资料

    转义字符串的一些资料 转义字符串是计算机编程语言中的一种特殊字符序列,用于表示不可打印的 ASCII 控制符或特殊字符。它的主要作用是将不可打印的 ASCII 控制符转换为可打印的字符,以便在不同的计算机系统中进行...

    Web应用安全:perl字符串转义以及字符串含号等特殊符号时的用法.docx

    【Perl字符串转义与特殊符号处理】 在Web应用安全中,理解编程语言的字符串处理机制至关重要,特别是涉及特殊符号和转义字符时。Perl是一种强大的脚本语言,广泛应用于CGI、系统管理、网络编程等领域。Perl的字符串...

    字符的转义

    在编程语言中,有时我们需要在字符串中直接插入特殊字符,比如换行符、制表符或者反斜杠。为了能在源代码中表示这些特殊字符,我们就需要用到转义序列。转义序列是以反斜杠(\)开头的字符序列,告诉编译器或解释器...

    c语言基础之字符串+转义字符

    像这种由双引号引起来的一串字符称为字符串字面值,简称字符串。 'a' C语言中用单引号引起来的叫做字符 a 用双引号括起来的叫做字符串 注意: C语言是不提供字符串类型的 ,但是它有字符串。c++或者Java是提供字符...

    HTML 转义字符串

    HTML(HyperText Markup Language)是一种用于创建网页的标准标记语言,其中转义字符串是HTML中的一个重要概念,用于在网页中插入特殊字符或者防止某些字符被浏览器误解析。在HTML中,某些字符如 "、"&gt;"、"&" 等具有...

    转义符,ASII码对照表,字符字符串区别,数据类型转换

    C学习笔记之基础篇_转义符,ASII码对照表,字符字符串区别,数据类型转换 免费提供

    转义字符串:将字符串中的特殊字符转换为其转义序列:对字符串中的特殊字符(\r、\t、'、...)进行转义并返回转义后的字符串。-matlab开发

    对字符串中的换行符或制表符等特殊字符进行转义,并返回转义后的字符串。 用于调试目的。 接收一个字符串作为参数并返回转义的字符串,该字符串在使用 sprintf() 打印时将重现该字符串。 如果您需要使用 sprintf ...

    C++ gbk转unicode、ansi转unicode,字符串查找、切割、转十六进制、转二进制、转义,随机数等数据处理类源码

    5转义字符串 6随机数 源码包含了封装的功能模块类以及测试类, 全部源码都可以用VS2020编译通过,请放心使用! 友情提示,为了兼顾一些旧代码,预编译头文件用的是StdAfx.h,如果需要更换为最新的pch.h,请按照以下...

    fast-json-escape:快速JSON字符串转义

    JSON转义在JS中快速转义JSON字符串。 手动转义小的JSON字符串比使用本机更快。 主要焦点是非常快速地检查不需要转义的字符串,同时还改善了转义自身或至少不低于JSON.stringify的条件。基准测试运行基准测试( npm ...

    HTML转义字符串

    在字符串中插入这些特殊字符时,必须使用反斜杠进行转义,否则JavaScript引擎会将其解释为控制字符而非文本内容。 "html转义字符表"和"HTML语言特殊字符对照表(ISO Latin-1字符集) - 来源:嘻嘻网 114.xixik....

    gson转义字符

    例如,我们需要将一个包含特殊字符的列表转换成JSON字符串。假设有一个简单的例子: ```java List&lt;String&gt; list = new ArrayList(); list.add("ƷƷ&"); list.add("Ʒ&"); ``` 在这个例子中,`"ƷƷ&"` 和 `"Ʒ&"`...

    转义表单提交字符处理函数

    - **功能**:此函数用于准备字符串以安全地插入到MySQL数据库中,通过转义特殊字符来防止SQL注入。 - **语法**:`mysql_real_escape_string(string, connection)` - **参数**: - `string`:要转义的字符串。 -...

    字符串转化成表名

    在建存储过程实现某一目的时,传入的参数会遇到是列名,表名的字符串,在这种情况下,应该怎样通过参数获得你要的值呢?

    python的字符串、转义字符、格式化字符

    接着是转义字符的特殊用法,如果你希望在字符串中直接使用反斜杠 `\`,可以使用 `r` 前缀来创建原始字符串(raw string),这样反斜杠就不会被解释为转义字符。例如,`r"\n"` 会得到一个包含反斜杠和字母 `n` 的字符...

    string转义字符.jpg

    python字符串转义字符python字符串转移字符python字符串转义字符python字符串转义字符python字符串转义字符

    测量程序编制 - python 12数据类型:String(字符串)-转义字符.pptx

    字符串中的转义字符是一个特殊概念,它允许我们在字符串中插入特殊字符或表示无法直接输入的字符。转义字符是通过在字符前加上反斜杠 `\` 来实现的。在Python中,转义字符主要用于以下几种情况: 1. **续行符**:当...

    023.Python字符串_转义字符_字符串拼接_字符串复制_input()获得键盘输入.mp4

    023.Python字符串_转义字符_字符串拼接_字符串复制_input()获得键盘输入.mp4

    PB程序中常用的字符串替换函数

    在PowerBuilder(简称PB)这一应用开发环境中,字符串处理是非常常见的需求之一。然而,PowerBuilder本身并未内置专门用于字符串替换的函数,这给开发者带来了一定的不便。为了解决这个问题,很多开发者会自行编写...

    字符串转义:返回带有特殊字符“转义”的字符串-matlab开发

    函数结果 = 压力(字符串) 返回带有特殊字符“转义”的字符串即,字符串“ Randy's wonton \ n%可口!” 变成“兰迪的馄饨 \\n %% 好吃!”。 因此,结果字符串适合打印出来并由 MATLAB 解释。 如果您是编写旨在...

    字符串转HTML的16进制转义符

    字符串转HTML的16进制转义符 是转过来的,因为当初自己研究了挺久,觉得这个会在学习的过程中有帮助,就一起共享过来了。 不好意思,之前没写明是什么语言写的。 这里声明一下:Java 这里对没看清楚的兄弟说一声...

Global site tag (gtag.js) - Google Analytics