zoukankan      html  css  js  c++  java
  • Python 正则表达式

    正则表达式:

    用事先定义好的一些特殊字符、及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑。

    用来过滤字符串数据,只要是字符串,都可以用正则来处理它。

    在py文件中设置代码的编码格式 # -*- coding: utf-8 -*- 就是必须符合一定的正则规范语句。

    一、元字符

    本身具有特殊含义的字符,叫元字符。

    常用的元字符:点. 脱字符^ 美元符$ 大括号{} 中括号[] 星号* 加号+ 问号? 管道符|

    (一).点"."

    通配元字符,除" "换行符外,匹配任意一个字符。

    (二).锚点元字符"^"、"$"

    (1).锁定行首:^(shift+6) 有些案例中,也被作为取反。

    (2).锁定行尾:$(shift+4)

    (三).重复元字符

    (1).星号*:匹配一个字符出现0次或多次,即:可有可无。"*"也占了一位。

    (2).加号+:匹配一个字符一次或多次,至少出现一次。

    (3).大括号{}:{N}N个;{M,N}M-N个;{M,}至少M个。

    (四).中括号[]

    选择括号内多个字符中的一个。

    (1).范围:[b-d],等价于[b,c,d]

    (2).取反字符:[^...]

    (五).管道符|

    二选一:匹配左右两个正则表达式中的一个。

    二、预定义字符

    (一).d 任意一个数字,等价于 [0-9]

    (二).D 任意一个非数字,等价于 [^0-9]

    (三).s 任意一个空白字符,等价于 [ fx0B]

    (四).S 任意一个非空白字符,等价于 [^ fxOB]

    (五).w 任意一个字母数字字符,等价于 [a-zA-Z0-9]

    (六).W 任意个一个非字母数字字符,等价于 [^a-zA-Z0-9]

    三、分组

    (一).管道符|:匹配左右任意一个表达式

    (二).(ab):将括号中字符作为分组

    (三). um:引用分组num匹配到的字符串

    (四).(?P<name>):为分组起别名

    (五).(?P=name):引用为name的分组

    四、常用的一些方法

    (一).re.compile(),编译

    (二).re.match(),从头找一个

    (三).re.search(),找一个

    (四).re.findall(),找所有

    (五).re.sub(),替换

  • 相关阅读:
    ASP.NET Core 介绍和项目解读
    C#性能优化总结
    C# 线程知识--使用Task执行异步操作
    异步编程 In .NET(转载)
    .NET实现WebSocket服务端即时通信实例
    .net core 学习笔记一 Program与Startup
    .net core 自定义中间件
    c# 通过json.net中的JsonConverter进行自定义序列化与反序列化
    c# 通过HttpListener创建HTTP服务
    c# 反射实现模型深拷贝
  • 原文地址:https://www.cnblogs.com/quanquan616/p/8877264.html
Copyright © 2011-2022 走看看