在python中,我们经常会在print中看到这样的格式:
print r"hello\n"
其实,这里的r就是禁止转义用的,所以,最终的输出结果是:
hello\n
而
print "hello\n"
则会输出的是 hello换行
这个经常会用在正则的地方,因为正则的时候经常需要使用到需要转义的地方
举个之前的例子:
result_serch = re.search(r'custom\.sh[' + "1b".decode("hex") + r'\n\r]',result)
这里,如果不用 r的话,custom.sh是一个脚本的名字,如果不用r的话,这里就需要写成custom\.sh
所以,用r就会避免很多这样的情况
比如有*。 +等的地方都存在这样的问题
常用的转义字符摘录如下:
转义字符 描述
(在行尾时) 续行符
\ 反斜杠符号
\’ 单引号
\” 双引号
\a 响铃
\b 退格(Backspace)
\e 转义
\000 空
\n 换行
\v 纵向制表符
\t 横向制表符
\r 回车
\f 换页
\oyy 八进制数yy代表的字符,例如:\o12代表换行
\xyy 十进制数yy代表的字符,例如:\x0a代表换行
\other 其它的字符以普通格式输出
+*.等