动态查找两个字符串之间的多个空格

时间:2012-05-31 05:20:03

标签: python implementation string-matching

我正在使用Python编写代码,并且从不同的变量中获取两个或更多单词并尝试在给定文本中找到匹配项。

例如,两个变量可能声明如下:

string1 = 'Polluted' 
string2 = 'air'

要匹配的文字可能是:

'Polluted\t\t\t air ''Polluted\tair'

单词/代币之间可能还有多个空格。

我需要找到一个类似于re.search(string1'\t+'string2,var)

的解决方案

您能帮助解决方案按预期实现吗?

1 个答案:

答案 0 :(得分:4)

使用等同于[ \t\n\r\f\v]集的\s,以及在使用re.UNICODE时在Unicode字符属性数据库中被分类为空格的任何内容。

>>> var = 'Polluted\t\t\t air, Polluted\tair'
>>> re.findall(re.escape(string1) + '\s+' + re.escape(string2), var)
['Polluted\t\t\t air', 'Polluted\tair']

>>> re.search('(\w+)\s+(\w+)', 'Polluted\t\t\t air').groups()
('Polluted', 'air')