我有一个看起来像这样的 Excel 电子表格:
Row1 : some text
some other row : "ABC Col" "DEF Col" "GHI Col" "JKL Col"
following rows : more text
我试图找到包含 ABC 和 JKL 的行。请注意,我传递的字符串可能与确切的列标题不匹配。
我正在使用xlrd
并且正在做这样的事情:
setOfheadings = set(['ABC', 'JKL'])
found_header = False
for i in range(1,sheet.nrows):
if ((not found_header)):
setOfRowValues = set([element.upper() for element in sheet.row_values(i)])
if len(setOfheadings.intersection(setOfRowValues)) == len(setOfheadings):
(found_header, header_row) = (True,i)
由于“ABC”与电子表格中的“ABC Col”不完全匹配。它失败。如果 mysetOfheadings
包含完全匹配,它会起作用。
关于如何使用集合交集进行正则表达式匹配的任何想法?