正则表达式
为避免提示正则表达式和转义字符冲突,如
\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</


658

被折叠的 条评论
为什么被折叠?



