我在找出正确的方式编写代码以查找适合我的正则表达式的所有单元格时遇到麻烦。到目前为止,这就是我所拥有的。我知道我不能只将单元格值等同于我的正则表达式,但我不知道该怎么做。
import openpyxl
import re
date = re.compile(r'\d{1,2}[\/-]\d{1,2}[\/-]18-\d{1,2}[\/-]\d{1,2}[\/-](18|19)')
for sheet in wb:
for row in sheet.iter_rows():
for cell in row:
if cell.value == date:
print (cell.value)
示例:
IN: mo = date.search('Support Term 3/7/18-3/6/18')
IN: mo.group()
OUT: '3/7/18-3/6/18'
(我测试了我的正则表达式,并且可以按我想要的方式工作,但是我的for循环显然需要一些工作)
答案 0 :(得分:1)
我认为您要使用的是已编译对象的search
方法:
import openpyxl
import re
date = re.compile(r'\d{1,2}[\/-]\d{1,2}[\/-]18-\d{1,2}[\/-]\d{1,2}[\/-](18|19)')
for sheet in wb:
for row in sheet.iter_rows():
for cell in row:
if date.search(str(cell.value)):
print(cell.value)