正则表达式分散在整个文本中的字符模式

时间:2013-09-08 08:16:42

标签: python regex

我是Python和正则表达式noob。我设法通过以下语句将完整页面的html源代码放入命令行。

print (driver.page_source).encode('utf-8')

冷却。但是在该文本中有一些可预测的字符串,我需要提取并存储到数组中。要查找的字符串模式是,[4个数字]后跟一个[连字符],后跟1到5个数字,例如:

2013-80324或2013-03但不是2013-832888

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

(?:^|(?<=\D))\d{4}-\d{1,5}(?=\D|$)
  • ?:表示非捕获组
  • ^匹配字符串开头的模式(虽然HTML输入不太可能)
  • $计算字符串末尾的模式
  • \d表示数字[0-9]\D -digit
  • {n}是长度n
  • 的量词
  • {m,n}量化范围mn的长度(包括两者)