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

    import re #导入正则模块re

    #re.match 尝试从字符串的开始匹配一个模式

    text = 'jgood is a handsome boy,he is cool , cleber,and so on...'

    m = re.match(r'(w+)s',text)

    #re.search 在字符串内查找模式匹配,只匹配第一个,若无则返回None

    s = re.search(r'shan(ds)omes',text) 

    #re.sub 替换字符串匹配项

    re.sub(r's+','-',text)

    #re.split 分割字符串

    re.split(r's+',text)

    #re.findall 获取字符串所有匹配字符

    re.findall(r'w*oow*',text)

    #re.compile 可以把正则表达式编译成一个正则表达式对象

    c = re.compile(r'w*oow*')

    c.findall(text)

    * 匹配前一个字符0或无限次

    + 匹配前一个字符一次或无限次

    ? 匹配前一个字符0或1次

     表示单词的开头或结尾,空格、标点、换行都算是单词的分割

    [] 表示满足括号中任一字符

    任意字符是用“.”表示,而“*”则不是表示字符,而是表示数量,“?”匹配到最短的就停止,懒惰匹配,

    [0-9],类似的还有[a-zA-Z]的用法

    [0-9]* *表示的任意长度包括0,也就是没有数字的空字符也会被匹配出来,*类似的符号+,表示的则是1个或更长。限定长度,就用{}代替+

     


    w - 匹配字母或数字或下划线或汉字(3.x版本可以匹配汉字,但2.x版本不可以)
    s - 匹配任意的空白符

    d - 匹配任意数字
    ^ - 匹配字符串的开始
    $ - 匹配字符串的结束

    S其实就是s的反义,任意不是空白符的字符

    W - 匹配任意不是字母,数字,下划线,汉字的字符

    D - 匹配任意非数字的字符
    B - 匹配不是单词开头或结束的位置

    [a]的反义是[^a],表示除a以外的任意字符。[^abcd]就是除abcd以外的任意字符。

    ? - 重复零次或一次
    {n,} - 重复n次或更多次
    {n,m} - 重复n到m次

     

     

     

     

    ---by littleyang 测试就是测试一下
  • 相关阅读:
    一、CentOS 7安装部署GitLab服务器

    四、指定Nginx启动用户
    三、Nginx支持php
    二、Nginx多站点配置(参考宝塔的)分析
    一、Nginx多站点配置
    一、PHP和Apache实现多用户自助建站
    Flask+uwsgi+Nginx+Ubuntu部署
    flask 上传头像
    flask 分页
  • 原文地址:https://www.cnblogs.com/littleyang/p/6763623.html
Copyright © 2011-2022 走看看