1.词法解析:

我的是名字是ths,今年18岁

语法分析后得到结果如下:

数字:18

中文:我的名字是 今年 岁

拼音:ths

符号:,。

请编写程序实现该词法分析功能

string模块解:

import string #引用string模块完成解析
def find(s):
digit = [] #存储数字
letter = [] #存储字母、拼音
punctuation = [] #存储符号、空格
chinese = [] #存储中文
for i in s:
if i in string.digits:
digit.append(i)
elif i in string.ascii_letters:
letter.append(i)
elif i in string.punctuation or i.isspace():
punctuation.append(i)
else:
chinese.append(i)
print('数字:{}'.format(''.join(digit)))
print('拼音:{}'.format(''.join(letter)))
print('符号:{}'.format(''.join(punctuation)))
print('中文:{}'.format(''.join(chinese)))

正则解:词法分析

import re
def analysis(str):
ze={"数字":"\\d","拼音":"[a-zA-Z]","汉字":"[\u4e00-\u9fff]"}
for k,v in ze.items():
jg=re.findall(v,str)
print(k + ":" + ''.join(jg))
str=re.sub(v,'',str)
print('符号:{0}'.format(str))

博客随笔:https://i.cnblogs.com/EditPosts.aspx?opt=1

												

最新文章

  1. Map java中的map 如何修改Map中的对应元素
  2. QT学习笔记5
  3. OOD沉思录 --- 类和对象的关系 --- 包含关系4
  4. 高校手机签到系统——第一部分Authority权限系统(下)
  5. git学习笔记06-创建分支合并分支-比svn快多了,因为只有指针在改变
  6. jquery ajax请求后台 的简单例子
  7. C语言多个源文件编译
  8. (转)跟我一起学JQuery插件开发教程
  9. JarvisOJ Basic Base64?
  10. 026 使用大数据对网站基本指标PV案例的分析
  11. HDU 3746 Cyclic Nacklace (KMP求循环节问题)
  12. BTM学习小记
  13. ASP.NET程序发布
  14. C#小票打印机
  15. Martin Fowler谈微服务的优缺点
  16. maven pom属性 详解
  17. node爬虫(转)
  18. 吴裕雄 实战python编程(2)
  19. Java集合----Collection工具类
  20. C#des加密算法指定键的大小对于此算法无效

热门文章

  1. Oracle Database Hang While Loading 3rd party SBT Library And After This Nobody Can Access The Database (windows login 登陆hang )
  2. requests发送HTTPS请求(处理SSL证书验证)
  3. 541 Reverse String II 反转字符串 II
  4. KEIL_RTX资源介绍
  5. [转]POI : How to Create and Use User Defined Functions
  6. 除虫记——有关WindowsAPI文件查找函数的一次压力测试
  7. RK3288开发过程中遇到的问题点和解决方法之Packages
  8. CSS实现画一条竖线
  9. vijos 1190 繁忙的都市
  10. mvc的model验证,ajaxhelper,验证机制语法