计算一行中的单词组(计算某些标题超过一个单词的列)

Counting groups of words in a line (counting columns where some titles are more than one word)

我有一个 txt 数据文件,我正在尝试计算列数。我的方法是使用以下方法计算第一行的标题:

with open('file.txt', 'r') as f:
    for line in f:
        print(Len(line.split()))

但是,有些标题不止一个单词,因此返回的数字比应有的数字高。标题也没有用固定数量的 space 分隔,因为我已经考虑过给 split 一个一定数量的 spaces 的参数。

有没有办法让它只计算被多个 space 分隔的单词?

这是我正在使用的table:

如果这不可能,是否有更好的方法来解决这个问题?

一个正则表达式应该可以做到:

re.split('\W\W+', line)