Python正则表达式简介

正则表达式在Python语言中的使用方法

Posted by xiaoh on March 31, 2016

目录

  1. 简介
  2. Python正则
    1. match
    2. findall
    3. sub
  3. 参考资料

从几年前在使用.NET语言的时候使用正则,到现在,有的时候用的多一些,有的时候用的比较少,不过,都没有离开正则,毕竟工作中很多内容都是在和字符串打交道。


简介

简介方面我不再罗列,如果你想简单的学习正则表达式,你可以去看一下 正则表达式30分钟入教程

如果你对这些内容感兴趣,想系统的学习一下正则,你可以去看下面的博客:


Python正则

在日常使用正则的时候无非就几个模块而已,下面列举一下:

match
import re
example = "Hello World, I am 24 years old."
pattern = re.compile(r"(\S+) (\S+) (\S*) (\S+) (\d+) (\S+) (\S+)")
m = pattern.match(example)
print m.group(0)    # Hello World, I am 24 years old.
print m.group(1)    # Hello
print m.group(2)    # World
m = re.match(r'(\S+) (\S+) (\S*) (\S+) (\d+) (\S+) (\S+)', example)
print m.group()
findall
import re
example = "Hello World, I am 24 years old."
pattern = re.compile(r"\d+")
m = pattern.findall(example)
print m # ['24']
sub
import re
example = "Hello World, I am 24 years old."
m = re.sub(r"\d+", "48", example)
print m
import re
example = "Hello World, I am 24 years old."
m = re.sub(r"(\d+)", lambda x: "[" + x.group(1) + "]", example)
print m # Hello World, I am [24] years old.
def my_replace(match):
    return "[" + match.group(1) + "]"
m = re.sub(r"(\d+)", my_replace, example)

https://docs.python.org/2/library/re.html
https://docs.python.org/2/howto/regex.html
https://docs.python.org/2.7/library/re.html


END