0

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

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

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

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

谢谢你的帮助。

4

1 回答 1

2
(?:^|(?<=\D))\d{4}-\d{1,5}(?=\D|$)
  • ?:表示非捕获组
  • ^匹配字符串开头的模式(虽然不太可能用于 HTML 输入)
  • $对字符串末尾的模式进行数学运算
  • \d表示一个数字[0-9]\D一个数字
  • {n}是长度的量词n
  • {m,n}将范围的长度量化mn(包括)
于 2013-09-08T08:32:10.530 回答