Python 自学(五) 之字符串及正则表达式

发布时间:2024年01月07日

目录

1. 字符串的分割合并? split()? join()? ? ? ? ?P132

2. 字符串的检索? ?count() find() index() startswith() endswith()? ? ? ? ?P134

3. 去除空格和特殊字符? ?strip()? lstrip() rstrip()? ? ? ? ? P139

4. 格式化字符串? ?format()? ? ? ? ?P142

5. 字符串编码转换? encode()? decode()? ? ? ? P145

6. python的正则表达式? ? ? ? ? P146

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待匹配字符串

文章来源:https://blog.csdn.net/weixin_43096766/article/details/135437574
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。