python基础:统计单词/数字/特殊符号(包括中文)
import re
def sta_words_nums_and_spacial_char(text):
"""
# 统计单词/数字/特殊符号(包括中文)
:param text: 被统计文本
:return:
"""
text = re.sub('\s+', ' ', text)
words = re.findall(r'[a-zA-Z]+', text)
nums = re.findall(r'[0-9]+', text)
print(words)
print('单词个数为:%s' % len(words))
print(nums)
print('数字个数为:%s' % len(nums))
spacial_chars = re.findall(r'[^a-zA-Z0-9 ]', text)
print(spacial_chars)
print('特殊符号包括中文个数为:%s' % len(spacial_chars))
char_and_num_sum = len(words) + len(nums) + len(spacial_chars)
print('总数为:%s' % char_and_num_sum)
result = '单词个数为:%s \n数字个数为:%s \n特殊符号包括中文个数为:%s \n总数为:%s'\
% (len(words), len(nums), len(spacial_chars), char_and_num_sum)
return result, words, nums, spacial_chars, char_and_num_sum
t = 'we are "一群人"222'
r = sta_words_nums_and_spacial_char(t)
print(r[0])
print(r)