品易云推流 关闭
文章详情页
文章 > Python常见问题 > python不可打印字符

python不可打印字符

头像

(*-*)浩

2019-08-30 09:41:024678浏览 · 0收藏 · 0评论

什么是不可打印字符?

print 打印时在shell输出端,看不到它。比如print \t执行后,shell输出端看不到\t,因为\t是一个制表符。像\t这类字符就是不可打印字符。

哪8个不可打印字符?

8个不可打印字符\cx,\f,\n,\r,\s,\S,\t、\v

\cx匹配由x指明的控制字符,x值必需为A-Z或a-z的大小写字符,\cA匹配一个Control-A控制字符

\f匹配一个换页符,leaf

\n匹配一个换行符,next

 \r匹配一个回车符,enter

\t匹配一个制表符,table

\v匹配一个垂直制表符,vertical

\s匹配任何空白字符,等效于[\r\n\r\t\v]

\S匹配任何非空白字符

示例代码

#decoding:utf-8
#ex_re_unprintableSymbol.py
self_file = __file__
 
import re #使用正则表达式模块
 
######8个不可打印字符\cx,\f,\n,\r,\s,\S,\t、\v#######
#\cx匹配由x指明的控制字符,x值必需为A-Z或a-z的大小写字符,
#例如:\cA匹配一个Control-A控制字符
#\f匹配一个换页符,leaf
#\n匹配一个换行符,next
#\r匹配一个回车符,enter
#\t匹配一个制表符,table
#\v匹配一个垂直制表符,vertical
#\s匹配任何空白字符,等效于[\r\n\r\t\v]
#\S匹配任何非空白字符
 
#\S*?最短地去匹配不含空白字符的字符串
text = "hello world lo lo lo"
ret = re.findall(r"\h\S*?o\b", text)
print ret#["hello"]
 
 
#\b\S*\S\b将一行文本的首尾处的任何空白字符都去掉
str = "\t\n\thello world\t\n\t\f"
ret = re.findall(r"\b\S.*\S\b",str)
print "============================="
print "xxx",ret,"xxx"
print "============================="
print "kkk",str,"kkk"
print "============================="
print "\nexit %s" % self_file

编译执行

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图