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

目录

[1. 字符串的分割合并 split() join() P132](#1. 字符串的分割合并 split() join() P132)

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

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

[4. 格式化字符串 format() P142](#4. 格式化字符串 format() P142)

[5. 字符串编码转换 encode() decode() P145](#5. 字符串编码转换 encode() decode() P145)

[6. python的正则表达式 P146](#6. python的正则表达式 P146)

[7. 使用re模块操作正则表达式 match() search() findall() P150](#7. 使用re模块操作正则表达式 match() search() findall() P150)

[8. 替换和分割字符串 sub() split() P155](#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待匹配字符串

相关推荐
Zzz_睡不醒18 小时前
JS(正则表达式)
javascript·正则表达式·c#
啊啊啊啊84320 小时前
函数,数组与正则表达式
前端·chrome·正则表达式
MediaTea1 天前
Python:正则表达式
开发语言·c++·python·正则表达式
会飞的鱼_1232 天前
Shell编程从入门到实践:基础语法与正则表达式文本处理指南
正则表达式
Vic101013 天前
优化正则表达式性能:预编译与模式匹配的最佳实践
数据库·mysql·正则表达式
三坛海会大神5553 天前
正则表达式与grep文本过滤详解
linux·运维·正则表达式
叁仟叁佰3 天前
Shell脚本编程:函数、数组与正则表达式详解
运维·服务器·网络·chrome·正则表达式
Lin南舟3 天前
掌握正则表达式与文本处理:提升 Shell 编程效率的关键技巧
linux·正则表达式
Learn Beyond Limits5 天前
Bias / variance and neural networks|偏差/方差和神经网络
人工智能·深度学习·神经网络·机器学习·ai·正则表达式·吴恩达
三水彡彡彡彡6 天前
Java中使用正则表达式的正确打开方式
java·开发语言·正则表达式