0
点赞
收藏
分享

微信扫一扫

Python 正则 4.27

Python百事通 2021-09-28 阅读 39

def    isPhone(number):

        number = str(number)

        if     len(number)==11    and     number.isdogot()    and    number[0:2]  =='13':

                print(''这是正确的手机号")

        else:

                    print('这不是是正确的手机号')

一、正则概念

import    re

a = re.findall(r'^13\d{9}','13845442778')

三、re模块

import    re   

st = 'this python my name is ljx 123@#'

#提前编译好正则表达式\d表示匹配数字

r = re.compile(r'\d')

#findall()是匹配所有满足条件的数据

print(r.findall(st))

#sub('s','a','st')将字符串里面的s替换成a

print(re.sub('s','a','st'))

print(re.sub('[s|o|3]',st))

#与字符串中的切割一样,功能稍微强大一些

print(re.spilt('[s|o|3]',st))

#match()只匹配字符串的开头并且只匹配一次

a = re.match('this',st)

#serach()从整个字符串匹配,只匹配一次,不针对开头

a = re.search('is',st)


#re元字符

#. 通配符   匹配任意字符,不会匹配到换行符

st = 'this python my name is ljx 123@#'

a = re.findall('.s',st)

#\取消正则的转义

st = '\nthis \d\d\d  \dpython my name is ljx 123@#'

#/d匹配数字 \D匹配到除数字之外的字符

a = re.findall(r'\\d',st)

#\s匹配空白符(空格,制表符,换行符)

#\S除空白符之外的字符

a = findall(r'\s',st)

#/w匹配字母,数字,下划线,汉字等字符

#\W匹配除字母,数字,下划线,汉字等字符之外的字符

a = findall(r'\w',st)

#\. 匹配点本身

#托字符,匹配开头,有则返回开头字符,无则返回空列表

#$匹配结尾,有则返回开头字符,无则返回空列表

a = findall(r'27$',st)

#{}中表示连续匹配几次

#{n,m}  n表示最小匹配次数   m表示最大匹配次数

#{n,}   从n次起,没有限定最大的次数

#{,m}  从0次起,最大的匹配次数是m

a = findall(r'\d{3}',st)

# + 匹配一次到多次

a = re.findall(r'\d+',st)

#匹配0-1次

a = re.findall(r'\d?',st)

# *  表示匹配0次到多次

a = re.findall(r'\d*',st)





举报

相关推荐

0 条评论