zoukankan      html  css  js  c++  java
  • 18 11 23 正则学习

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

    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)

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

  • 相关阅读:
    进制
    流程控制
    运算符
    格式化输出
    数据结构-树的遍历
    A1004 Counting Leaves (30分)
    A1106 Lowest Price in Supply Chain (25分)
    A1094 The Largest Generation (25分)
    A1090 Highest Price in Supply Chain (25分)
    A1079 Total Sales of Supply Chain (25分)
  • 原文地址:https://www.cnblogs.com/fromlantianwei/p/10010313.html
Copyright © 2011-2022 走看看