600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > python3 正则表达式 嵌套表格_python 正则表达式处理表格

python3 正则表达式 嵌套表格_python 正则表达式处理表格

时间:2019-03-20 09:13:03

相关推荐

python3 正则表达式 嵌套表格_python 正则表达式处理表格

由于原始数据里字符串需要分割,如果有统一的字符串可以分割,比如' ' ',' ';'或者‘-’可以用str.split来分割,然后给分割的字符串统一命名,详见如下代码

如下是用Split分割:| 3室2厅 | 133.26平米 | 南 | 精装

Sec_House1=Sec_House['信息'].str.split('|',4,True)

Sec_House1.columns=['','户型','大小','朝向','装修']

如果分割后的数据夹带字符串,就需要用正则表达式来匹配我们需要的信息,比如去掉单位,只保留数字

如下是把带小数点的数字筛选,比如:123.56平方转换为123.56

Sec_House1['大小']=Sec_House1['大小'].str.extract(r'(\d+\.?\d*)',expand=True)

如下是把23人关注 转换为23----"*"(贪婪) 重复零次或更多 {0,}

Sec_House['关注']=Sec_House['关注'].str.extract(r'(\d*)',expand=True)

如下是把共17次带看 转换为17----"+"(懒惰) 重复一次或更多次 {1,}

Sec_House['带看']=Sec_House['带看'].str.extract(r'(\d+)',expand=True)

如下是将---高楼层(共31层)板楼 转换为高楼层

Sec_House['floorH']=Sec_House['楼层信息'].str.extract(r'(\w+)',expand=True)

如下是将---高楼层(共31层)板楼 转换为板楼

Sec_House['floorS']=Sec_House['楼层信息'].str.extract(r'(\)\S+)',expand=True)

Sec_House['floorS']=Sec_House['floorS'].str.extract(r'(\w+)',expand=True)

正则知识点总结:

开头“^”结尾“$”

"^" :^会匹配行或者字符串的起始位置,有时还会匹配整个文档的起始位置。

"$" :$会匹配行或字符串的结尾

量词

"*"(贪婪) 重复零次或更多 {0,}

"+"(懒惰) 重复一次或更多次 {1,}

"?"(占有) 重复零次或一次 {0,1}

"{n,}?" 重复n次以上

懒惰限定符---尽可能少重复 "?" 重复零次或一次 {0,1}

"*?" 重复任意次,但尽可能少重复

"+?" 重复1次或更多次,但尽可能少重复

"??" 重复0次或1次,但尽可能少重复

元字符介绍

".":匹配除了换行符以外的任何字符

"\b" :单词的边界 "\B" 匹配不是单词开头或结束的位置

"\d": 匹配数字,"\D" 匹配任意非数字的字符

"\w":匹配字母,数字,下划线. "\W" 匹配任意不是字母,数字,下划线 的字符

"\s":匹配空格 "\S" 匹配任意不是空白符的字符

"[abc]": 字符组 匹配包含括号内元素的字符 "[^abc]" 匹配除了abc以外的任意字符

"{n,m}": 最少匹配n次且最多匹配m次。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。