zoukankan      html  css  js  c++  java
  • 【python】正则表达式相关

    注意:Python3.X 的print要有括号, Python 2.x的不需要

    放上学习时写的例子:

    import re
    
    m = re.match(r'(w+) (w+)(?P<sign>.*)', 'hello world!')
    
    
    print("m.string:", m.string)
    print("m.re:", m.re)
    print("m.pos:", m.pos)
    print("m.endpos:", m.endpos)
    print("m.lastindex:", m.lastindex)
    print("m.lastgroup:", m.lastgroup)
    
    print("m.group():", m.group())
    print("m.group(1,2):", m.group(1,2))
    
    print("m.groups():", m.groups())
    print("m.groupdict():", m.groupdict())
    
    print("m.start(2):", m.start(2))
    
    print("m.span(2):", m.span(2))
    
    print(r"m.expand(r'g gg'):", m.expand(r'2 13'))
    
    
    #search 不一定从第0位开始匹配
    
    pattern = re.compile(r'world')
    
    match = re.search(pattern, 'hello world!')
    if match:
        print(match.group())
     
    
    
    
    #split 已pattern分割字符串
    pattern = re.compile(r'd+')
    print(re.split(pattern, 'one1two2three33four4'))
    
    #findall 以列表形式返回全部能匹配的子串
    
    pattern = re.compile(r'd+')
    print(re.findall(pattern, 'one1two2three33four4'))
    
    #finditer 返回一个顺序访问每一个匹配结果的迭代器
    pattern = re.compile(r'd+')
    
    for m in re.finditer(pattern, 'one1two2three3four4'):
        print(m.group())
    
    
    #替换
    pattern = re.compile(r'(w+) (w+)')
    s = 'i say, hello world!'
    
    
    
    print(re.sub(pattern, r'2 1', s))
    
    
    def func(m):
        return m.group(1).title() + ' ' + m.group(2).title()
    
    
    
    print(re.sub(pattern, func, s))
        
    #subn 比替换多返回了一个替换次数
    
    print(re.subn(pattern, func, s))
  • 相关阅读:
    1507. Reformat Date
    430. Flatten a Multilevel Doubly Linked List
    Java 面试
    429. N-ary Tree Level Order Traversal
    637. Average of Levels in Binary Tree
    662. Maximum Width of Binary Tree
    463. Island Perimeter
    PHP error_reporting() 函数设置应该报告何种 PHP 错误
    php+js实现极验滑块拖动验证码-tncode【转】
    Cocos Creator 动态改变sprite图片【转】
  • 原文地址:https://www.cnblogs.com/dplearning/p/4852869.html
Copyright © 2011-2022 走看看