docs: def match(self, row, template_row=None):
          """
          匹配一个模板时，只比较起始行，未来考虑支持比较关键字段即可，现在是起始行的所有字段全匹配
          :param row:
          :return:
          """
          if not template_row:
              template_cols = self.template[0]['cols']
          else:
              template_cols = template_row['cols']
  
          #check if length of template_cols great than row, then match failed
          if len(template_cols)>len(row):
              return False
  
          for c in template_cols:
              #如果坐标大于模板最大长度，则表示不匹配，则退出
              text = c['value']
              if not text or (text and not (text.startswith('{{') and text.endswith('}}'))
                  and row[c['col']-1].value == text):
                  pass
              else:
                  return False
          # print 'Matched'
          return True