当前位置: 首页 > news >正文

网站文章优化技巧佛山cms建站系统

网站文章优化技巧,佛山cms建站系统,wordpress交易系统,建设工程合同印花税正则常见的三种功能,它们分别是:校验数据的有效性、查找符合要求的文本以及对文本进行切割和替换等操作。 1.元字符 所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符 元字符大致分成这几类:表示单个特殊字符的,表示…

正则常见的三种功能,它们分别是:校验数据的有效性、查找符合要求的文本以及对文本进行切割和替换等操作。

1.元字符

所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符

元字符大致分成这几类:表示单个特殊字符的,表示空白符的,表示某个范围的,表示次数的量词,另外还有表示断言的

1.1特殊单字符

英文的点(.)表示换行以外的任意单个字符,\d 表示任意单个数字,\w 表示任意单个数字或字母或下划线,\s 表示任意单个空白符。另外,还有与之对应的三个 \D、\W 和 \S,分别表示着和原来相反的意思

import re#匹配所有数字txt = "123d5sdf23"
result = re.findall('\d', txt)
print(result)
#输出:['1', '2', '3', '5', '2', '3']
#匹配所有的数字、字母和下划线txt = 'sdfw234_sdf12'
result = re.findall('\w', txt)
print(result)
#输出:['s', 'd', 'f', 'w', '2', '3', '4', '_', 's', 'd', 'f', '1', '2']

1.2. 空白符

不同的系统在每行文本结束位置默认的“换行”会有区别。比如在 Windows 里是 \r\n,在 Linux 和 MacOS 中是 \n

\r 回车符

\n 换行符

\f 换页符

\t 制表符

\v 垂直制表符

\s 任意空白字符

#获取每一行的开头
f = open('hello.txt', 'r', encoding='utf-8')
txt = f.read()
print(txt)
#输出:
#小明
#小红
#小月
result = re.findall('\n\w*', txt)
print(result)
#输入:['\n小红', '\n小月']

1.3. 量词

在正则中,英文的星号(*)代表出现 0 到多次,加号(+)代表 1 到多次,问号(?)代表 0 到 1 次,{m,n}代表 m 到 n 次

* :0到多次

+ :1到多次

?:0到1次

{m}:出现m次

{m,} :出现至少m次

{m,n} :m到n次

#寻找3个数字组合
txt = '123 1 sfd 2342 aa 23g 342'
result = re.findall('\d{3}\s', txt)
print(result)
#输出:['123 ', '342 ']

4. 范围

| :或,如ab|bc 代表ab或者bc

[...] :多选一,括号中任意单个元素

[a-z]:匹配a-z之间任意单个元素

[^...] :取反,不能包括括号中的任意单个元素


#某个资源可能以 http:// 开头,或者 https:// 开头,也可能以 ftp:// 开头
txt = 'http://www.baidu.com'
result = re.match('(https?|ftp):\/\/', txt)
print(result.span())
#输出:(0, 7)

2.量词与贪婪

2.1 贪婪模式

在正则中,表示次数的量词默认是贪婪的,在贪婪模式下,会尝试尽可能最大长度去匹配

#贪婪匹配
txt = 'aaabb'
result = re.findall(r'a*', txt)
print(result)
#输出:['aaa', '', '', '']

a* 在匹配开头的 a 时,会尝试尽量匹配更多的 a,直到第一个字母 b 不满足要求为止,匹配上三个 a,后面每次匹配时都得到了空字符串。

贪婪模式的特点就是尽可能进行最大长度匹配。

2.2 非贪婪模式

量词后面加上英文的问号 (?),正则就变成了 a*?,这就是非贪婪模式

#非贪婪匹配
txt = 'aaabb'
result = re.findall(r'a*?', txt)
print(result)
#输出:['', 'a', '', 'a', '', 'a', '', '', '']

非贪婪模式会尽可能短地去匹配

3.函数

3.1findall() 函数

findall() 函数返回包含所有匹配项的列表。

#findall() 这个列表以被找到的顺序包含匹配项txt = "China is a great country"
x = re.findall("China", txt)
print(x)
#输出:['China']

3.2 search() 函数

search() 函数搜索字符串中的匹配项,如果存在匹配则返回 Match 对象。

如果有多个匹配,则仅返回首个匹配项,如果未找到匹配,则返回值 None

#search() 函数搜索字符串中的匹配项,如果存在匹配则返回 Match 对象
txt = "China is a great country"
x = re.search(r"\s", txt)print("第一个空格位置", x.start())
#输出:第一个空格位置 5

3.3 split() 函数

split() 函数返回一个列表,其中字符串在每次匹配时被拆分:

#spilt 分割
txt = "China is a great country"
x = re.split(r"\s", txt)
print(x)
#输出:['China', 'is', 'a', 'great', 'country']

通过指定 maxsplit 参数来控制出现次数:

#通过指定 maxsplit 参数来控制出现次数:
txt = "China is a great country"
x = re.split(r"\s", txt, 2)
print(x)
['China', 'is', 'a great country']

3.4 sub() 函数

sub() 函数把匹配替换为您选择的文本:

#sub() 函数把匹配替换为您选择的文本:
txt = "China is a great country"
x = re.sub("is", "IS", txt)
print(x)
#输出:China IS a great country

3.5 Match 对象

Match 对象是包含有关搜索和结果信息的对象。

注释:如果没有匹配,则返回值 None,而不是 Match 对象。

Match 对象提供了用于取回有关搜索及结果信息的属性和方法:

  • span() 返回的元组包含了匹配的开始和结束位置
  • .string 返回传入函数的字符串
  • group() 返回匹配的字符串部分
#正则表达式查找以大写 "C" 开头的任何单词
txt = "China is a great country"
x = re.search(r"\bC\w+", txt)
print(x.span())
#输出:(0, 5)
#打印匹配的字符串部分
print(x.group())
#输出:China

源码下载

若此文档不够详细,​可以参考十分钟学会python_哔哩哔哩_bilibili​

http://www.15wanjia.com/news/159431.html

相关文章:

  • 洛阳做网站价格广告公司手机网站建设
  • 临邑建设局官方网站阿里云网站建设流程教案
  • 网站开发企业培训报名免费网站用官微建站
  • 做国外贸易哪个网站好建设一个平台网站需要多少钱
  • 网站推广服务费会计分录怎么做免费毕业设计的网站建设
  • 北京网站优化诊断网站开发毕业设计任务书怎么写
  • 网站建设知识学习心得做电影网站需要用什么空间
  • 手机网站自助网站的策划方案怎么写
  • 做视频特效的网站破解wordpress主题教程
  • 做网站好的百度指数api
  • 优秀企业门户网站杭州做网站公司
  • 如何自己创网站小型网站的建设与开发
  • 北京做网站公司 seoaws安装wordpress
  • 白山市城乡建设局网站wordpress主题Modown破解
  • 外贸做中英文网站做软件需要网站有哪些
  • 设计网站推荐知乎旺苍网站建设
  • 成立了一支网站建设的专业队伍西安淘宝网站建设公司排名
  • 做自己的建材配送网站客户关系管理系统名词解释
  • 怎样制作表白网站免费刷网站百度关键词
  • 大连专业html5网站建设安装wordpress邮件提示503
  • 做微网站价格小红门网站建设
  • 贸易公司广告网站东莞微网站建设报价
  • 广告手机网站制作网站开发用什么编辑器好点
  • 郑州网站建设渠道湖南大型网站建设公司
  • 生态旅游网站的建设的内容重庆排名seo公司
  • 做网站备案时间公司做宣传网站
  • 国外设计网站pinterest怎么打不开成都广告印刷公司
  • 北京搬家公司大全百度关键词优化软件怎么样
  • 绵阳手机网站制作asp网站 证书
  • 做网站一般是什么工作优秀品牌设计案例分析