正则表达式提取所有成对的单词及其各自的3个单词后和3个单词前
这是我的正则表达式:
((?:[\S,]+\s+){0,3})((?:[\S,]+\s*){0,3})
正文如下:
Quadriband - UMTS - HSDPA - HSUPA - LTE - Wi-Fi Fotocamera da 8 Megapixel - Lettore MP3 Sistema Operativo iOS8 - GPS integrato
我只得到这些结果:
Quadriband - UMTS - HSDPA -
HSUPA - LTE - Wi-Fi Fotocamera
da 8 Megapixel - Lettore MP3
Sistema Operativo iOS8 - GPS integrato
但是我想要所有的组合,尤其是- Wi-Fi Fotocamera - da 8 Megapixel
我如何编辑我的正则表达式以捕获空格前所有可能的3个(也可以是0、1或2)单词和空格后所有可能的3个(也可以是0、1或2)单词。。你知道吗
似乎你想要每6个连续的无空格子字符串。所以呢此任务不需要regex,您可以在列表中使用
itertools.islice
:另外,如果您对单词有特殊的条件,您可以通过将特定正则表达式传递给
re.findall
来查找单词,并将其用作s.split
。你知道吗相关问题 更多 >
编程相关推荐