码迷,mamicode.com
首页 > 其他好文 > 详细

18 11 23 正则学习

时间:2018-11-24 00:16:30      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:阅读   user   sub   html   要求   提取   系统   数据   邮箱   

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

1  小程序    一     邮箱输入判断  系统

import re


def main():
    email = input("请输入你的邮箱")
    """下面的意思为  ^   开头   从a到z  A到Z 0到9  自动匹配 4到20位数字  由于 .  是什么都可算进去   所以加上  /  来解除他的功能
    最后用  $ 来当作结尾"""
    ret = re.match(r"^([a-zA-Z0-9]){4,20}@(163|126|qq)\.com$",email)
    if ret :
        print("%s是符合规范的"%email)
        user_emali = ret.group()  # 调用group的方法就可以 调用出匹配到的数据
        print(user_emali)

    else :
        print("%s 不是规范的"%email)

if __name__ == __main__:
    main()

 

小程序2   正则  提取网址代码  增加了分组功能   (难  了解)

import  re

html_str  = "<h1>hahahha</h1>"


judje = re.match(r"<(?P<name1>\w*)>.*</(?P=name1)>",html_str)  # 用 (?P<name>)   和   (?P=name)  来进行分组定位
html = judje.group()  # 上面的P要  大写
print(html)

 

简单版 

import  re

html_str  = "<h1>hahahha</h1>"


judje = re.match(r"<(\w*)>.*</\1>",html_str)  # 用  ()()  \2 \1   \1 就是括号一内容  \2 就是第二个括号的内容
html = judje.group()  
print(html)

re 的  高级用法   match 是从头开始搜索   那么 search  是从数据里面找到你想要的 数值

import re

ret = re.search(r"\d+","阅读数量 9999+")

information = ret.group()
print(information)

search  是找到第一个符合要求的值  相对于search来说   findall可以用来找出多个满足的值  并且 不用group  直接返回一个列表

import re

ret = re.search(r"\d+","阅读数量 9999+")

information = ret.group()
print(information)

sub  替换   re.sub(正则出要替换的数据  ,  新的数据  , 被替换的文字列)

import  re

ret  = re.sub(r"\d+","666","python = 9999 ,  a = 20398098 , b = 098098")
print(ret)

 

 

 

 

 

 

---恢复内容结束---

18 11 23 正则学习

标签:阅读   user   sub   html   要求   提取   系统   数据   邮箱   

原文地址:https://www.cnblogs.com/fromlantianwei/p/10010313.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!