diff --git a/FileParserClass.py b/FileParserClass.py index b46fcdc..21f9e01 100644 --- a/FileParserClass.py +++ b/FileParserClass.py @@ -78,10 +78,16 @@ def parserColumn(self, table_list, table_name): ''' for column in dirty_column: tmp_list = column.strip().split(' ') - column_name = re.match(r'`(.*?)`', tmp_list[0]) + clean_list = [] + for ele in tmp_list: + if '' != ele and not ele in clean_list: + clean_list.append(ele) + if 0 == len(clean_list): + continue + column_name = re.match(r'`(.*?)`', clean_list[0]) if column_name != None: column_name = column_name.group(1) - column_type = tmp_list[1] + column_type = clean_list[1] # TODO:此处无法正确匹配,使用取列表最后一项,可能会有bug column_comment = re.match(r'.*?COMMENT \'(.*?)\'.*?', column.strip()) if column_comment is not None: @@ -90,10 +96,10 @@ def parserColumn(self, table_list, table_name): column_comment = '' - # if '\'' in tmp_list[-1]: - # column_comment = tmp_list[-1][1:-2] + # if '\'' in clean_list[-1]: + # column_comment = clean_list[-1][1:-2] # else: # column_comment = '' column_tmp.append([column_name, column_type, column_comment]) table_data.append([table_name[i], column_tmp]) - return table_data \ No newline at end of file + return table_data