day23

---恢复内容开始---

import re

# []  范围匹配 中间 用-来连接

# re.findall("[a-zA-Z0-9]","a ab abc abcd a 123c")

# 如果要匹配 符号- 要写表达式的左边或者右边

# print(re.findll("[-ab]","a ab abc abcd a123c a--'))

 

# 重复匹配 表达式的匹配次数

# *表示 任一次数 所以0次也满足

print(re.findall("[a-zA]*","a ab abc abcdssdisjad al123"))

#                          [a-zA-Z-]*


# +  一次或多次

#  print(re.findall"[a-zzA]{1,2}","a ab abc abcdsdssjad a123c"))

#                                   [a-zA-Z]*

# ? 0次或1次

print(re.findall("[a-zA-Z]{1,2}","a ab abc abcdsdssjad a 123c"))

 

# {1,2}自定义匹配次数 {1,} 1到无穷{,1} 0到1次

print(re.findall("[a-zA-Z]{1,2}","a ab abc abcdsdssjad a123c"))

 

# + *贪婪匹配 表达式匹配的情况下 尽可能的多拿  (一直匹配 直到不满足为止)

 

# print(re.findall("\w*","jjsahdjshdissadsa daaddsada"))

# print(re.findall("\w+","jjsahdjshdjssadsa dssddsada"))

# 非贪婪匹配 在表达式的后面加上?

# print(re.findall("\w?","jjsahdissadsa dssddsads")) #非贪婪匹配

#

# text = """<img

# src = https://ss1.baidu.com/6oNXsjjp0@$4$QLZ8tyhnq/it/u=2972240716,31439

# 51157&amp;h=81&amp;app=22&amp;f=JPEG?

w=121&amp;h=81&amp;s=OFB86DB55C624C9COAB1F57203008031"class="c-img c-i,g6">"""

 

# 演示贪婪匹配

print(re.findall('src="http.*"',text))

 

# print(re.findall("(a-zA-Z+)_dsb","aigen_dsb cxx_dxb alex_dsb zxx_xsb_dsb"))

 

#re模块中常用的函数

# match 从字符串开始匹配 只找一个

print(re.match("\w*","abc").group(o)) # 获取匹配成功的内容

# group 用来获取某个分组的内容 默认获取第0组 就是整个表达方式本身

print(re.match("([a-zA-Z]+)(_dsb)","aigen_dsb cxx_dsb alex_dsb zxx_xsb_dsb").group(2))

print(re.match("\w*","abc").span()) # 获取匹配成功的内容的

 

print(re.search("\w*","abc").group())

# 从全文范围取一个

print(re.search("[a-zA-Z]+(_dsb)","xxx aigen_dsb alexdsb zxx_xsb_dsb"))

# 从开始的位置开始匹配

# primt(re.match("([a-zA]+)(_abcd"))

 

# print(re.split("\---*|","python|____ljsl___ljava"))

 

 

# 替换

print(re.sub("python","PYTHON","jslpythonljava"))

# 用正则表达式来交换位置

text1 = "java|c++ljslclpython"

# 将整个内容分为三块 java  lc++ xxxxx|   python

partten = "(.+?)(\|.)(.+)"

".+?ahgshags"

#?:用于取消分组 就和没写括号一样

# partten = "(?:.+?)(\.+\|)(.+)"

#print(re.search(partten,trxt).group())

print(re.sub(partten,"\2\3\1",text))                                                                                                                                                                                                                      

 

# 当要匹配的内容包含\时

text = "a\p"

"\p"

print(text)

print(re.findall(r"a\\p"<text))

 

#qq密码  长度6-----16  数字字母特殊  不包含^

# 如果包含^不匹配任何内容

#  除了^别的都能匹配上

 

"[^\^]{6,16}"

 

import re

# print(re.se.arch("[^^]"{6,16}","1234567^as^"))

#print(re.search("[^[\^]+.[6.16}","1234567as"))

 

#print(re.match("[^@]{6,16}","1234567@"))

#

#print(re.match("[0-9]{6,7}","abasadsasasa^"))

#长度必须为6不能包含@

print(re.match('[^^]{6,8}$","1111111^56781111"))

 

#print(re.match("[0-9]{6,7}","1234567"))

#print(re.match("^\"[^@]{6.16}\"$",' "1234567io 1u" '))

 

print(re.match("^^]{6,8}$"<"1234567^"))

 

转载于:https://www.cnblogs.com/hui2002/p/9820872.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值