ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

正则表达式的使用

2022-07-01 15:33:54  阅读:152  来源: 互联网

标签:string 正则表达式 ll re sm 使用 small findall


1.正则表达式介绍

#严格的字符匹配示例
import re

string = '1. A small sentence. - 2. Another tiny sentence. '

#查询
re.findall('sentence', string)
re.search('sentence', string)
re.match('1. A small sentence', string)
#替换
re.sub(pattern='small', repl='large', string=string)
re.sub(pattern='small', repl='', string=string)

In [ ]:

string = 'small smell smll smsmll sm3ll sm.ll sm?ll sm\nll sm\tll'

#能代表除换行符“\n”任意一个字符;
re.findall('sm.ll', string)
#被包含在中括号内部,任何中括号内的字符都会被匹配;
re.findall('sm[asdbf]ll', string)
re.findall('sm[a-zA-Z0-9]ll', string)
#转义字符\
re.findall('sm\.ll', string)
re.findall('sm[.\- ?]ll', string)
#该字符被视为OR操作
re.findall('small|smell', string)
re.findall('sm\wll', string)

In [ ]:

re.findall('sm..ll', string)
#匹配次数
re.findall('sm.{2}ll', string)
re.findall('sm.{1,2}ll', string)
re.findall('sm.{1,}ll', string)
re.findall('sm.?ll', string)  # {0,1}
print(re.findall('sm.+ll', string))  # {0,}
print(re.findall('sm.*ll', string))  # {1,}
re.findall('sm\?ll', string)

In [ ]:

#使用正则表达式提取电话号码
import pandas as pd
rawdata = '555-1239Moe Szyslak(636) 555-0113Burns, C.Montgomery555-6542Rev. Timothy Lovejoy555 8904Ned Flanders636-555-3226Simpson,Homer5553642Dr. Julius Hibbert'
names = re.findall('[A-Z][A-Za-z,. ]*', rawdata)
tels = re.findall('\(?[0-9]{0,3}\)?[ \-]?[0-9]{3}[ \-]?[0-9]{4}', rawdata)
pd.DataFrame({'Names': names, 'TelPhone': tels})

2.参考文章

【创作不易,望点赞收藏,若有疑问,请留言,谢谢】

标签:string,正则表达式,ll,re,sm,使用,small,findall
来源: https://www.cnblogs.com/dongxuelove/p/16434814.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有