Python 自学(五) 之字符串及正则表达式
目录
1. 字符串的分割合并? split()? join()? ? ? ? ?P132
2. 字符串的检索? ?count() find() index() startswith() endswith()? ? ? ? ?P134
3. 去除空格和特殊字符? ?strip()? lstrip() rstrip()? ? ? ? ? P139
4. 格式化字符串? ?format()? ? ? ? ?P142
5. 字符串编码转换? encode()? decode()? ? ? ? P145
7. 使用re模块操作正则表达式? ? ? ? match()? search()? findall()? ? ? ? ?P150
8. 替换和分割字符串? sub()? ?split()? ? ? ? ? ? ? ? P155
1. 字符串的分割合并? split()? join()? ? ? ? ?P132
str.split(sep, maxsplit)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?// 把字符串按照分隔符sep切分为字符串的列表
strnew = string.join(iterable)? ? ? ? ? ? ? ? ? ? ? ? ? ?// 把字符串列表iterable按照分隔符string合并成? ????????????????????????????????????????????????????????????????????????// 新的字符串
2. 字符串的检索? ?count() find() index() startswith() endswith()? ? ? ? ?P134
count()? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // 检索 指定字符串 在另一字符串里出现的次数;不存在,返回0
find()? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?// 检索 是否包含指定的子字符串;存在则返回首个位置的索引? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?// 不存在则返回?-1
index()? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //? 类似于find(), 但不存在则抛出异常
startswith()? ? ? ? ? ? ? ? ? ? ? ? ? ?//? 是否以指定字符串开头,返回True False
endswith()? ? ? ? ? ? ? ? ? ? ? ? ? ? //??是否以指定字符串结尾,返回True False
3. 去除空格和特殊字符? ?strip()? lstrip() rstrip()? ? ? ? ? P139
strip()? ? ? ? ? ? ? ? ? ? ? ? ?// 去除字符串左右两侧的空格和特殊字符
lstrip()? ? ? ? ? ? ? ? ? ? ? ? //?去除字符串左侧的空格和特殊字符
rstrip()? ? ? ? ? ? ? ? ? ? ? ? //?去除字符串右侧的空格和特殊字符
4. 格式化字符串? ?format()? ? ? ? ?P142
基本格式:
template.format(args)? ? ? ? ? ? ? ? //?template 想要的显示样式,args 要转换的项
格式化字符请参考 P143
整数输出类型:
b:以二进制格式输出
c:将整数转换成对应的 unicode 字符
d:以十进制输出(默认选项)
o:以八进制输出
x:以十六进制小写输出
X:以十六进制大写输出
n:与 d 相同,但使用当前环境的分隔符来分隔每3位数字十进制浮点数输出类型:
e:指数标记;使用科学计数法输出,用e来表示指数部分,默认 precision 为6
E:与 e 相同,但使用大写 E 来表示指数部分
f:以定点形式输出数值,默认 precision 为6
F:与 f 相同
g:通用格式;对于给定的 precision p >= 1,取数值的p位有效数字,并以定点或科学计数法输出(默认选项)
G:通用格式;与 g 相同,当数值过大时使用 E 来表示指数部分
n:与 g 相同,但使用当前环境的分隔符来分隔每3位数字
%:百分比标记;使用百分比的形式输出数值,同时设定 f 标记
5. 字符串编码转换? encode()? decode()? ? ? ? P145
encode()? ? ? ? ? ? ? ? // 把 str 类型转换为 bytes 字节类型
decode()? ? ? ? ? ? ? ? //?把 bytes 类型转换为 str 字节类型
6. python的正则表达式? ? ? ? ? P146
符号 | 说明 |
^ | 行的开始 |
$ | 行的结尾 |
. | 匹配除 换行符 以外的任意字符 |
\w | 匹配字母,数字,下划线或汉字 |
\W | 匹配除 字母,数字,下划线或汉字 以外的字符 |
\s | 匹配单个的空白符(包括tab和换行) |
\S | 匹配 除?单个的空白符(包括tab和换行) 以外的字符 |
\b | 匹配单词的开始或结束 |
\d | 匹配数字 |
? | 匹配 前面的字符 0次或1次 |
+ | 匹配 前面的字符 1次或多次 |
* | 匹配 前面的字符 0次或多次 |
{n} | 匹配 前面的字符n次 |
{n,} | 匹配 前面的字符最少n次 |
{n,m} | 匹配 前面的字符最少n次,最多m次 |
[^] | 排除字符,即取反 |
| | 或 |
\ | 转义字符 |
r' ' | 原生字符串 |
7. 使用re模块操作正则表达式? ? ? ? match()? search()? findall()? ? ? ? ?P150
match(pattern, string)? ? ? ? ? ? ? ?// 从字符串的开始处进行匹配,
????????????????????????????????????????????????// pattern 正则表达式形式的模式字符串,string待匹配字符串
? ? ? ? ? ? ? ? ? ? ? ????????????????????????? // 匹配成功则返回match对象,否则返回None
search(pattern, string)? ? ? ? ? ? ? ? // 在整个字符串中搜索第一个匹配的值
???????????????????????????????????????????????// pattern 正则表达式形式的模式字符串,string待匹配字符串
? ? ? ? ? ? ? ? ? ? ? ????????????????????????? // 匹配成功则返回match对象,否则返回None
findall(pattern, string)? ? ? ? ? ? ? ? ? ? ? ? // 在整个字符串中搜索所有符合正则表达式的字符串,? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // 并以列表的形式返回
8. 替换和分割字符串? sub()? ?split()? ? ? ? ? ? ? ? P155
sub(pattern, repl, string)? ? ? ? ? ? ? ? // 字符串替换。?
??????????????????????????????????????????????????// pattern 正则表达式形式的模式字符串,string待匹配字符串
????????????????????????????????????????????????????????// repl 替换进去的字符串
split(pattern, string)? ? ? ? ? ? ? ? // 根据正则表达式分割字符串,并以列表形式返回?
???????????????????????????????????????????????// pattern 正则表达式形式的模式字符串,string待匹配字符串
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!