Python中的正则表达式


这只是正则表达式能够完成工作的很少一部分。换句话说,即使你现在备受打击,相信我,你也不是什么也没见过了。
现在,你应该熟悉下列技巧:

  • ^ 匹配字符串的开始。
  • $ 匹配字符串的结尾。
  • \b 匹配一个单词的边界。
  • \d 匹配任意数字。
  • \D 匹配任意非数字字符。
  • x? 匹配一个可选的x字符(换句话说,它匹配1次或者0次x 字符)。
  • x* 匹配0次或者多次x字符。
  • x+匹配1次或者多次x字符。
  • x{n,m} 匹配x字符,至少n次,至多m次。
  • (a|b|c)要么匹配a,要么匹配b,要么匹配c。
  • (x) 一般情况下表示一个记忆组(remembered group). 你可以利用re.search函数返回对象的groups()函数获取它的值。

正则表达式非常强大,但是它并不能为每一个问题提供正确的解决方案。你应该学习足够多的知识,以辨别什么时候他们是合适的,什么时候他们会解决你的问题,什么时候他们产生的问题比要解决的问题还要多。

一些人,当遇到一个问题时,想“我知道,我将使用正则表达式。” 现在他有两个问题了。