'''输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数。
统计出英文字母字符的个数
'''
# -*- coding: utf-8 -*-
import re
#正则表达式匹配
def isMathc(src,pat):
    pattern = re.compile(pat)
    result = re.match(pattern,src)
    if result == None:
        return 0
    else:
        return 1

#判断单个字符的种类:
def chargeType(character):
    # 数组中的三个元素分别代表英文字母,数字,和空格
    type_num = ['[a-z]|[A-Z]', '\d', '\s']
    # 判断是否为英文字母
    if isMathc(character, type_num[0]) == 1:
        return 1
    elif isMathc(character, type_num[1]) == 1:
        return 2
    elif isMathc(character, type_num[2]) == 1:
        return 3
    else:
        return 4

def getCharNum(str):
    count = []
    for i in range(4):
        count.append(0)
    print(len(count))
    for i in range(len(str)):
        if chargeType(str[i])==1:
            count[0]+=1
        elif chargeType(str[i])==2:
            count[1]+=1
        elif chargeType(str[i])==3:
            count[2]+=1
        else:
            count[3]+=1
    return count
str='asc ss./ 124'
print(getCharNum(str))