我正在尝试使用python将字符串转换为单词列表。我想采取如下措施:
string='这是一个字符串,包含单词!'
然后转换为如下内容:
list=['This','is','a','string','with','words']
注意省略了标点和空格。最快的方法是什么
试试这个:
重新导入
mystr='这是一个带单词的字符串!'
wordList=re.sub(“[^\w]”,“”,mystr.split()
工作原理:
从文档中:
re.sub(模式、应答、字符串、计数=0、标志=0)
返回通过替换repl替换字符串中模式最左侧不重叠的出现而获得的字符串。如果找不到模式,则返回的字符串将保持不变。repl可以是字符串或函数
因此,在我们的案例中:
模式是任何非字母数字字符
[\w]表示任何字母数字字符,等于字符集
[a-zA-Z0-9_]
a到z、a到z、0到9和下划线
因此,我们匹配任何非字母数字字符,并用空格替换它。
然后我们split()它将字符串按空格拆分,并将其转换为一个列表
“你好,世界”
变成“你好世界”
与re.sub
然后[‘hello’,’world’]
拆分后()
如果有任何疑问,请告诉我