Python 正则表达式练习
【摘要】 Python 正则表达式练习
import re
# 匹配一行文字中所有开头的字母
s = 'i love you but you don\'t love me'
# \b\w findall
content = re.findall(r'\b\w', s)
print(content)
# 匹配一行文字中所有数字开头的内容
s1 = 'i 12love 2you 78but 980you 43don\'66t 89 love 43me'
content1 = re.findall(r'\b\d', s1)
print(content1)
# 匹配 只含数字和字母的行
s2 = 'i love you \n2222kkkk but \nfefe23 you dont love \n234324dd'
content2 = re.findall(r'\w+', s2, re.M)
print(content2)
# 写一个正则表达式,使其能匹配一下字符 'bit','bat','but','hat','hit','hut'
s3 = "'bit','bat','but','hat','hit','hut'"
content3 = re.findall(r'..t', s3)
print(content3)
# 提取每行中完整的年月日和时间段
s3 = 'se2323 1987-10-10 22:44:55 e4343 2018-10-20 09:47:54'
content4 = re.findall(r'\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}', s3)
print(content4)
# 提取电子邮件格式
s4 = """xxxxx@gmail.com xxxx@qq.com baidu.com 999.com jkjk@163.com"""
content5 = re.findall(r'\w+@\w+.com', s4)
print(content5)
# 把以上合法的电子邮件地址替换成自己的电子邮件地址
content6 = re.sub(r'\w+@\w+.com', 'ruochen@163.com', s4)
print(content6)
# 使用正则提取字符串中的单词
s5 = 'i love you not because who 233 of 890sdx not'
content7 = re.match(r'\b[a-zA-Z]+\b', s5)
# 此代码与以上代码相等
# content7 = re.search(r'\b^[a-zA-Z]+\b', s5)
print(content7.group())
['i', 'l', 'y', 'b', 'y', 'd', 't', 'l', 'm']
['1', '2', '7', '9', '4', '6', '8', '4']
['i', 'love', 'you', '2222kkkk', 'but', 'fefe23', 'you', 'dont', 'love', '234324dd']
['bit', 'bat', 'but', 'hat', 'hit', 'hut']
['1987-10-10 22:44:55', '2018-10-20 09:47:54']
['xxxxx@gmail.com', 'xxxx@qq.com', 'jkjk@163.com']
ruochen@163.com ruochen@163.com baidu.com 999.com ruochen@163.com
i
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)