企业网站维护的要求包括前端自我介绍面试技巧
news/
2025/10/7 9:58:19/
文章来源:
企业网站维护的要求包括,前端自我介绍面试技巧,定制头像软件,常州专业做网站公司Python的正则表达式使用 定义使用场景查替换分割 常用的正则表达符号查原字符英文状态的句号点 .反斜杠 \英文的[]英文的()英文的?加号 星号 *英文状态的大括号 {} 案例 定义
正则表达式是指专门用于描述或刻画字符串内在规律的表达式。
使用场景
无法通过切片#xff0c;… Python的正则表达式使用 定义使用场景查替换分割 常用的正则表达符号查原字符英文状态的句号点 .反斜杠 \英文的[]英文的()英文的?加号 星号 *英文状态的大括号 {} 案例 定义
正则表达式是指专门用于描述或刻画字符串内在规律的表达式。
使用场景
无法通过切片将字符串的子串返回。 借助于replace方法无法完成非固定值或非固定位置值的替换。 借助于split方法无法按照多种值实现字符串的分割。
查
findall(pattern, string, flags0)pattern指定需要匹配的正则表达式。 string指定待处理的字符串。 flags指定匹配模式常用的值可以是re.I、re.M、re.S和re.X。re.I的模式是让正则表达式对大小写不敏感re.M的模式是让正则表达式可以多行匹配re.S的模式指明正则符号即可以匹配任意字符包括换行符\nre.X模式允许正则表达式可以写得更加详细如多行表示、忽略空白字符、加入注释等。 替换
sub(pattern, repl, string, count0, flags0)pattern同findall函数中的pattern。 repl指定替换成的新值。 string同findall函数中的string。 count用于指定最多替换的次数默认为全部替换。 flags同findall函数中的flags。 分割
split(pattern, string, maxsplit0, flags0)pattern同findall函数中的pattern。 maxsplit用于指定最大分割次数默认为全部分割。 string同findall函数中的string。 flags同findall函数中的flags。 常用的正则表达符号
使用这些函数需要导入re功能包
查原字符
指代直接存在于字符串内部的子串。
# 导入第三方包
import re
# 提取出字符串中的Python子串
s1 看了博主的Python的文章感觉Python很简单学会了
out1 re.findall(Python, s1)
print(out1)输出 [‘Python’, ‘Python’] 英文状态的句号点 .
英文的‘.’ 指代任意字符如数字、字母、标点符号、汉字等但除了换行符\n。
# 导入第三方包
import re
# 提取出动力的值
s2 此次宝马主要搭载了1.5L和1.5T两种动力的发动机。凯迪拉克则搭载了1.0T和1.8T的动力。
out2 re.findall(1...,s2)
out3 re.findall(1\...,s2) # \. 代表小数点转义一下
print(out2)
print(out3)[‘1.5L’, ‘1.5T’, ‘1.0T’, ‘1.8T’] [‘1.5L’, ‘1.5T’, ‘1.0T’, ‘1.8T’] 反斜杠 \
反斜杠 \ 表示转义符用于转换含义的符号。 \n指代换行 \t指代Tab制表符 \d指代0~9中的任一数字 \s指代任意一种空白如空格、Tab、换行等 \w指代字母、数字和下划线中的任意一种52大小字 10数字0-9 1下划线 63种 . 指代句号点本身 若是想打 \ 则用\\
# 导入第三方包
import re
# 剔除字符串中的所有空白
s3 (距离2019北京马拉松开跑只有两周时间了\n今年的北京马拉松预报名人数超过16万人\t 媒体公布的中签率只有16%左右再创历年来的新低。\n)
print(s3)
out4 re.sub(\s,,s3)
print(out4)输出 距离2019北京马拉松开跑只有两周时间了 今年的北京马拉松预报名人数超过16万人这有个tab长度 媒体公布的中签率只有16%左右再创历年来的新低。 这有个空白行 距离2019北京马拉松开跑只有两周时间了今年的北京马拉松预报名人数超过16万人媒体公布的中签率只有16%左右再创历年来的新低。 英文的[]
指代字符集合当需要特定字符匹配时可以选择中括号。
# 导入第三方包
import re
# 取出手机号信息
s4 用户联系方式13612345566用户编号为11011254321
out5 re.findall(1[356789]\d\d\d\d\d\d\d\d\d, s4) # 第二位为356789中的一个
print(out5)
# 提取出动力
s5 通过对比新朗逸1.5L和1.5T两种动力在1.5年行驶期后的数据。发现1.5T的口碑相对较好
out6 re.findall(1.5[a-zA-Z],s5) # 取出a-z或A-Z
print(out6)
# 或
out7 re.findall(1.5[TL],s5) # 取出a-z或A-Z
print(out7)输出 [‘13612345566’] [‘1.5L’, ‘1.5T’, ‘1.5T’] [‘1.5L’, ‘1.5T’, ‘1.5T’] 英文的()
指代特定内容的截取抠。
# 导入第三方包
import re
# 提取出用户的年龄
s6 id:1, name:Tom, age:3, gender:1; id:2, name:Lily, age:5, gender:0
print(re.findall(\d,s6))
print(re.findall(age:\d,s6))
print(re.findall(age:(\d),s6))输出 [‘1’, ‘3’, ‘1’, ‘2’, ‘5’, ‘0’] [‘age:3’, ‘age:5’] [‘3’, ‘5’] 英文的?
表示匹配前一个字符匹配0次或1次。
# 超链接的匹配
URL1 https://www.baidu.com/
URL2 http://www.gov.cn/
pattern https?://www\..*?这样https和http都能匹配上了。
加号
表示匹配前一个字符匹配1次及以上。
# 邮箱地址的匹配
email1 Lsxxx2011163.com
email2 654088115qq.com
pattern [0-9a-zA-Z_\.\-][a-zA-Z0-9_\-]\.com星号 *
表示匹配前一个字符0次及以上。
# 提取出产品名称中含奶粉字样的产品
prod [婴儿袜, 亨氏奶粉, 奶粉勺, 多功能奶瓶, 幼儿奶粉量筒, 磨牙棒]
res []
for i in prod:res.extend(re.findall(.*奶粉.*, i))
print(res)输出 [‘亨氏奶粉’, ‘奶粉勺’, ‘幼儿奶粉量筒’] 英文状态的大括号 {}
表示匹配前一个字符特定的次数或范围。 {m}匹配前一个字符m次 {m,}匹配前一个字符至少m次 {m,n}匹配前一个字符m~n次 {,n} 匹配前一个字符之多n次
# 手机号码的匹配
pattern 1[356789]\d{9}
# 至少6个长度的密码
pattern \w{6,}
# 区号信息
pattern 0\d{2,3}案例
# 导入用于正则表达式的re模块
import re
# 取出字符中所有的天气状态
string1 {ymd:2018-01-01,tianqi:晴,aqiInfo:轻度污染},{ymd:2018-01-02,tianqi:阴~小雨,aqiInfo:优},{ymd:2018-01-03,tianqi:小雨~中雨,aqiInfo:优},{ymd:2018-01-04,tianqi:中雨~小雨,aqiInfo:优}
print(re.findall(tianqi:(.*?), string1)) # ?为了防止盲目匹配非贪婪式输出 [‘晴’, ‘阴~小雨’, ‘小雨~中雨’, ‘中雨~小雨’] # 导入用于正则表达式的re模块
import re
# 取出所有含O字母的单词
string2 Together, we discovered that a free market only thrives when there are rules to ensure competition and fair play, Our celebration of initiative and enterprise
print(re.findall(\w*o\w*,string2, flags re.I)) # re.I大小写不敏感
# 将标点符号、数字和字母删除
string3 据悉这次发运的4台蒸汽冷凝罐属于国际热核聚变实验堆ITER项目的核二级压力设备先后完成了压力试验、真空试验、氦气检漏试验、千斤顶试验、吊耳载荷试验、叠装试验等验收试验。
print(re.sub([。、a-zA-Z0-9],,string3))输出 [‘Together’, ‘discovered’, ‘only’, ‘to’, ‘competition’, ‘Our’, ‘celebration’, ‘of’] 据悉这次发运的台蒸汽冷凝罐属于国际热核聚变实验堆项目的核二级压力设备先后完成了压力试验真空试验氦气检漏试验千斤顶试验吊耳载荷试验叠装试验等验收试验 # 导入用于正则表达式的re模块
import re
# 将每一部分的内容分割开
string4 2室2厅 | 101.62平 | 低区/7层 | 朝南 \n 上海未来 - 浦东 - 金杨 - 2005年建
split re.split([-\|\n], string4) # \|转义下表示竖杠本身split函数是用来分割的
print(split)
split_strip [i.strip() for i in split] # 循环列表去除前后的空格
print(split_strip)输出 [2室2厅 , ’ 101.62平 , ’ 低区/7层 , ’ 朝南 , ’ 上海未来 , ’ 浦东 , ’ 金杨 ‘, ’ 2005年建’] [‘2室2厅’, ‘101.62平’, ‘低区/7层’, ‘朝南’, ‘上海未来’, ‘浦东’, ‘金杨’, ‘2005年建’]
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/930280.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!