python 用所有标点符号分隔句子

问题

给出一段话,由短句组成,短句之间可能被任意标点符号隔开。想要提取所有的短句。

解决

使用 re.split 函数,用正则式匹配的方法,一次性分隔所有短句。

import re
pattern = r',|\.|/|;|\'|`|\[|\]|<|>|\?|:|"|\{|\}|\~|!|@|#|\$|%|\^|&|\(|\)|-|=|\_|\+|,|。|、|;|‘|’|【|】|·|!| |…|(|)'
test_text = 'b,b.b/b;b\'b`b[b]b<b>b?b:b"b{b}b~b!b@b#b$b%b^b&b(b)b-b=b_b+b,b。b、b;b‘b’b【b】b·b!b b…b(b)b'
result_list = re.split(pattern, test_text)
print(result_list)

输出为

['b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'b']

可见所有的 b 都被提取了出来。

猜你喜欢

转载自blog.csdn.net/HappyRocking/article/details/80900890