首页 > 解决方案 > 正则表达式拆分标点符号和空格,括号内除外

问题描述

我正在尝试标记一个字符串,其中所有标点符号都成为它自己的标记。但是,我不需要在括号内拆分文本。

例句:我想将 [InsideBrackets] 和 [Inside Brackets] 保持在一起,同时删除其他标点符号。

过了一会儿,我想出了这个:

re.findall(r"\[?\w+\]?|[^\w\s]",str_here)

产生:

['I' , 'want' , 'to' , 'keep' , '[InsideBrackets]' , ',' , 'as' , 'well' , 'as' ,
'[Inside' , 'Brackets]' , ',' , 'together',',','while','removing','other','punctuation','.']

但我还没有弄清楚如何在括号内不分割空格。我找到了几种方法来做到这一点,但它们都打破了标点符号的分裂。我需要做出什么改变?

标签: pythonregex

解决方案


推荐阅读