Python入门 —— 正则表达式 Day9 【转载】

在数据清洗的学习过程中,发现文本数据的处理并非一招半式能解决,有时必须要搬出利器——正则表达式。在之前的【SAS正则表达式】系列中(在后台回复【sasre】查看),我用正则表达式做文本处理做的非常之爽,比如下面这列数据:
在这里插入图片描述
这是一份产品名单,有的用数字来编码,有的直接是产品的名字,现在想把数字编码(也即红色字体)的部分提取出来,看似没有什么规律,但是在SAS中,用正则表达式两行代码就搞定了。
现在,要挑战用正则表达式处理Pandas的数据。

一、正则表达式简介

虽然在SAS中学了正则表达式的基础,Python稍有不同,现在还是简单复习一下:

1. 元字符

元字符是一系列代码,用来简化表达某种意思,比如:
\d 表示数字
\D 表示非数字
\w 表示单词字符
\W 表示非单词字符
等等。

有一个技术博客里给了很好的总结,网址:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html,以备查询。

2. 函数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
不行,匹配不出来,因为Shuojun不是出现在开头。
在这里插入图片描述

二、 初识PRXPOSN()

在这里插入图片描述
在这里插入图片描述

三、用正则表达式处理Pandas数据

1.匹配行

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 提取匹配文字

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 提取匹配文字中的一部分

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4. 总结

虽然具体的问题千奇百怪,但核心的方法都是一样的,正则表达式函数+迭代 = Pandas数据的处理。考验的还是Python技巧的综合运用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值