1

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

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

string1 = 'Polluted' 
string2 = 'air'

匹配的文本可能是:

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

单词/标记之间也可能有多个空格。

我需要找到类似于以下内容的解决方案:re.search(string1'\t+'string2,var)

您能否提供解决方案以按预期实施?

4

1 回答 1

4

使用\s相当于 set 的[ \t\n\r\f\v]内容,加上 Unicode 字符属性数据库中归类为空格的任何内容(如果re.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')
于 2012-05-31T05:23:18.403 回答