Skip to main content
 首页 » 编程设计

python之在 Python 中将单词/数字与符号分开

2025年05月04日15langtianya

在 python 2 中,我想获取一个字符串,并将其存储在一个数组中,分隔符是从单词/数字到符号以及空格的变化,反之亦然。希望有一个功能可以做到这一点。示例:

"54 3 'hello world' 5+4" 

会回来

["54", "3", "'hello world'", "5", "+", "4"]  

我已经使用 re.findall(r"[\w']+", text) 来获取所有分隔的单词/数字的列表,但是在获取时我被卡住了整理出的符号。

请您参考如下方法:

您可以使用如下的解决方法,但您没有指定所有可能的符号。

>>> import re 
>>> s = "54 3 'hello world' 5+4" 
>>> re.findall(r"('[^']*'|\w+|[^\w\s]+)", s) 
['54', '3', "'hello world'", '5', '+', '4'] 

更严格的做法是:

>>> re.findall(r"('[^']*'|[a-z0-9]+|[^a-z0-9\s]+)", s, re.I)