Вы можете использовать этот подход, используя re.finditer
:
>>> s = 'Nokia Lumia 930 Smartphone, Display 5 pollici, Fotocamera 20 MP, 2GB RAM RAM Processore Quad-Core 2,2GHz, Memoria 32GB, Windows Phone 8.1, Bianco [Germania]'
>>> regex = r"\s*\bRAM\b(?=\s*((?:\S+\s+){0,5}\S+))"
>>> for m in re.finditer(regex, s):
... print ( re.findall(r'((?:\S+\s+){0,5}\S+)$', s[1:m.start()])[0], m.group(1) )
...
('5 pollici, Fotocamera 20 MP, 2GB', 'RAM Processore Quad-Core 2,2GHz, Memoria 32GB,')
('pollici, Fotocamera 20 MP, 2GB RAM', 'Processore Quad-Core 2,2GHz, Memoria 32GB, Windows')
Если вы хотите только полные совпадения, используйте:
>>> for m in re.finditer(regex, s):
... print ( re.findall(r'((?:\S+\s+){0,5}\S+)$', s[1:m.start()])[0] + m.group(1) )
...
5 pollici, Fotocamera 20 MP, 2GBRAM Processore Quad-Core 2,2GHz, Memoria 32GB,
pollici, Fotocamera 20 MP, 2GB RAMProcessore Quad-Core 2,2GHz, Memoria 32GB, Windows