• 正则表达式深入


    ^:匹配字符串的开头

    $:匹配字符串的末尾

    .匹配任意字符,除了换行符

    [....]用来表示一组字符如[amk]匹配‘a’'m'或'k'

    [^...]不在[]中的字符

    *:匹配0或多个的表达式

    +:匹配1或多个表达式

    ?:匹配0或1个由前面的正则表达式定义的片段

    {n}:匹配n次

    string="192.168.2.2"

    m=re.match("[0-9]{3}.",string)

    print(m.group)-----------192.

    string="192.168.2.2"

    m=re.match("([0-9]{3}.){2}",string)

    print(m.group)-----------192.168.

    string="192.168.2.2"

    m=re.match("([0-9]{1,3}.){3}",string)

    print(m.group)-----------192.168.2.

    string="192.168.2.233333"

    m=re.match("([0-9]{1,3}.){3}d{0-3}",string)

    print(m.group)-----------192.168.2.233

     {n,}:精确匹配n个前面表达式

    {n,m}:匹配n-m次由前面的正则表达式定义的片段

    a|b匹配a或b

    w匹配字母数字

    W匹配非字母数字

    s匹配任意空白字符等价于[ f]

    S匹配任意非空白字符

    d匹配任意数字等价于[0-9]

    D匹配任意非数字

    A匹配字符串开始

    匹配字符串结束

    z匹配字符串结束

    G匹配最后匹配完成的位置

    常用的:

    re.match(pattern,string)//从头匹配

    re.search(pattern,string)、、匹配整个字符串,直到找到一个匹配

    re.split()//将匹配到的格式当做分割点对字符串分割成列表

    m=re.split("[0-9]","zy2zlj9sb4")

    print(m)------------['zy','zlj','sb']

    re.findall()//找到所有要匹配的字符并返回列表

    m=re.findall("[0-9]","zy2zlj9sb4")

    print(m)------------['2','9','4']

    re.sub(pattern,repl,string,count,flag)//替换匹配到的字符

    m=re.sub("[0-9]","|","zy2zlj9sb4",count=2)

    print(m)-----------zy|zlj|sb4

      匹配手机号:

    phone_str=="13542615948"

    phone_str1=="15542615948"

    m=re.search("(1)([358]d{9})",phone_str1)

    print(m.group)

    匹配IP:

    ip="192.168.60.223"

    m=re.search("d{1-3}.d{1-3}.d{1-3}.d{1-3}",ip)

    print(m.group)

    匹配email:

    email=“zy.zllj@334.com”

    re.search(r"0-9.a-z]{0,26}@[0-9.a-z]{0,20}.[0-9a-z]{0,8}",emal)

    print(m.group)

    import re

    re.match("[0-9"])==re.match("[0123456789"])

    re.match("[a-zA-Z0-9"])

  • 相关阅读:
    grep命令、sed 命令 、awk命令、uniq命令
    正则表达式学习(python之re模块)
    linux目录结构
    shell之find命令详解
    shell之 ps、kill、killall命令详解
    linux用户及权限
    C#中数据类型char*,const char*和string的三者转换
    C#中通过SendARP读取MAC地址
    C#对字典Dictionary 的添加,遍历,移除系列操作
    CMD命令行实现复制一张图片1000份:
  • 原文地址:https://www.cnblogs.com/my334420/p/6405177.html
Copyright © 2020-2023  润新知