自然语言处理 实验一:正则表达式的应用

一、实验目的:

1.掌握正则表达式的函数

2.掌握在中文文本中过滤特殊符号、标点符号、英文、数字的方法

二、实验设备及分组

1.PC机或笔记本电脑若干;

2.Window 7及以上版本操作系统;

  1. 3.Python 运行环境;

4.安装和配置Anaconda。

三、实验任务及要求

  1. 现有一段文本“广州:51000 深圳:518000 佛山:528000 珠海:519000 东莞:523000”,提取其中的地名和对应邮编,使其一一对应。
  2. 现有一段网页标签“<meta name="description"content="京东JD.COM-专业的综合网上购物商城,销售家电、数码通信、电脑、家居百货、服装服饰、母婴、图书、食品等领域数万个品牌优质商品。便捷、诚信的服务为您提供愉悦的网上购物体验! "/>”,需要提取其中的文本内容。
  3. 使用正则表达式提“111111@qq.comabcdefg@126.comabc123@163.com”中所有的邮箱号。
  4. 将字符串“2022 Happy New Year 2023”进行操作,实现如下功能:

(1)将字符串中的数字提取出来,得到字符串:“2@0@2@2@2@0@2@3”。

(2)将字符串中的数字删除,得到字符串:“Happy New Year”。

四、实验过程及实验步骤:(手写完成:要求写出实验步骤,要求书写规范,字迹切勿潦草。)

1.现有一段文本“广州:51000 深圳:518000 佛山:528000 珠海:519000 东莞:523000”,提取其中的地名和对应邮编,使其一一对应。

import re
import jieba
text1="广州:51000 深圳:518000 佛山:528000 珠海:519000 东莞:523000"
clean_data=''.join(re.findall('[\u4e00-\u9fa5]',text1))
name=jieba.lcut(clean_data)
post_number=re.findall('\d+',text1)
for i in zip(name,post_number):
    print(i)

2.现有一段网页标签“<meta name="description"content="京东JD.COM-专业的综合网上购物商城,销售家电、数码通信、电脑、家居百货、服装服饰、母婴、图书、食品等领域数万个品牌优质商品。便捷、诚信的服务为您提供愉悦的网上购物体验! "/>”,需要提取其中的文本内容。

text2='<meta name="description"content="京东JD.COM-专业的综合网上购物商城,销售家电、数码通信、电脑、家居百货、服装服饰、母婴、图书、食品等领域数万个品牌优质商品。便捷、诚信的服务为您提供愉悦的网上购物体验! "/>'

text_content=re.sub('[a-zA-Z\d<>""-./=]','',text2)

print(text_content)

 3、使用正则表达式提取“111111@qq.comabcdefg@126.comabc123@163.com”中所有的邮箱号。

text3="111111@qq.comabcdefg@126.comabc123@163.com"

qq=re.findall('[a-z\d].*?m',text3)

print(qq)

 4.(1)将字符串“2022 Happy New Year 2023”进行操作,实现如下功能:将字符串中的数字提取出来,得到字符串:“2@0@2@2@2@0@2@3”。

text4="2022 Happy New Year 2023"

lo=re.findall('\d',text4)

for i in lo:

    print(i,end='@')

  4.(2)将字符串中的数字删除,得到字符串:“Happy New Year

list1=re.sub('[0-9]','',text4)
for i in list1:
    print(i,end='')
  • 25
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值