正则表达式详解

正则表达式

为避免提示正则表达式和转义字符冲突,如\d,用\\d来表示正则表达式,把\本身给转义掉

判断字符串里面是否包含某个字符串

a = 'C|C++|Java|Python|PHP|JavaScript|C#|Ruby|Swift'

方法一:

print(a.index('C++'))

方法二:

print('C++' in a)

方法三:正则表达式
使用正则表达式要通过re模块
re.findall函数:字符串查找

import re
a = 'C|C++|Java|Python|PHP|JavaScript|C#|Ruby|Swift'
r = re.findall('Python', a)
print(r)
#输出:['Python'] ----- 是一个列表

问题:用正则表达式提取出下面字符串中所有数字

import re
a = 'C1C++4Java7Python0PHP4JavaScript3C#8Ruby9Swift'
r = re.findall('\d+', a)  
#正则表达式中 '\d'表示数字
print(r)
#输出:['1', '4', '7', '0', '4', '3', '8', '9']

字符集

  • 只能输出一个字符

\d表示数字, [0-9]
\D表示字母, [A-Za-z]
\w表示数字和字母(无论大小写)以及下划线_(不包括其他符号) [A-Za-z0-9_]
\W表示符号(空格&\n,等其他符号)(不包括下划线)
\s表示空白字符(空格,制表符,换行符) [\t\n\r\f\v]
\S表示非空白字符
.点,表示除换行符\n之外其他所有字符

例1:要提取出下面字符串中的acc,aec

import re
a = 'abc,acc,adc,aec,afc,agc'
r = re.findall('a[ce]c', a)  
#元字符[],字符集,出现在[]里的字符是'或'的关系
print(r)
输出:['acc', 'aec']

例2:要提取出下面字符串中非的acc,aec的其他字符

import re
a = 'abc,acc,adc,aec,afc,agc'
r = re.findall('a[^ce]c', a)  #?元字符[^ce]表示非c和e的其他字符
print(r)
#输出:['abc', 'adc', 'afc', 'agc']

例3:要提取出下面字符串中acc,adc,aec</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值