"""re 正则模快 实现编译查找的功能--匹配和替换的工作:"""
"""预定义字符集:
\d"""
# import re
"""\d匹配数字--->不是要匹配的类型报错"""
# str1 = "abc123"
# str2 = re.match("\d",str1)
# print(str2.group())
"""\D非数字---->match默认匹配一次"""
# str1 = "abc123"
# str2 = re.match("\D",str1)
# print(str2.group())
"""* 匹配:匹配0次或者n次 碰到不是匹配的类型结束匹配"""
# str1 = "abc123"
# str2 = re.match("\D*",str1)
# print(str2.group())
"""+匹1次或者n次 ?匹配0次或者1次"""
# str1 = "abc123"
# str2 = re.match("\D+",str1)
# print(str2.group())
# str1 = "abc123"
# str2 = re.match("\d?",str1)
# print(str2.group())
"""^匹配以什么进行开头:"""
# str1 ="Abc123"
# str2 = re.match("^[A-Z]\D*",str1)
# print(str2.group())
"""{}给指定的匹配次数"""
# str1 = "111111Wbc123"
# str2 = re.match("d}",str1)
# print(str2.group())
"""{}匹配几次到几次"""
# str1 = "w22222wqwae1111"
# str2 = re.match("\D{1,8}",str1)
# print(str2.group())
# str2 =re.match("\d{1,3}",str1)
# print(str2.group())
# import re
# list1 = ["www.baidu.com","www.jd.com","www.taobao.cn"]
# for i in list1:
# a =re.match("^www.*.com$",i)
# print(a.group())
# """实现一个匹配手机号的功能 11位 使用match"""
# str1 = ["15800000000","15833333333","12200000000"]
# for i in str1:
# str2 = re.match("^1[3,5,7][1-9]\d{8}",i)
# print(str2.group())
"""search 从第一个字符开始查找 一找到就返回第一个字符串 找到就不往下找 找不到就报错"""
# str1="aa121321312313s"
# str2=re.search("\D+",str1)
# print(str2.group())
#
# str2=re.search("\d+",str1)
# print(str2.group())
"""findall 从第一个字符开始查找,找到全部相关匹配为止 找不到返回一个列表【】
他不要用group进行输出"""
# str1 = "123abc22222bcd"
# str2 = re.findall("\d",str1)
# print(str2)
# str2 = re.findall("\D",str1)
# print(str2)
# str2 =re.findall("\d*",str1)
# print(str2)
"""用*的话 那不是匹配的类型 那么每个结果以空格打印输出"""
# str3=re.findall("\d+",str1)
# print(str3)
"+号不会打印不匹配的"
#
# str4 =re.findall("\d?",str1)
# print(str4)
"问号 单个字符串['1', '2', '3', '', '', '', '2', '2', '2', '2', '2', '', '', '', '']"
"""匹配区间所有的字符"""
# str1 ="1234567890"
# str2=re.findall("1234(.+)89",str1)
# print(str2)
""".表示所有的字符集 +表示匹配1次或者多次"""
"""compile 编译模式生成对象规则 找到全部相关匹配为止,找不到返回一个列表[]
集合findall进行使用"""
# str1 ="1234567890"
# str2 = re.compile("1234(.+)89")#compile 负责编写匹配的规则
# str3 =str2.findall(str1) #通过compile调用findall 填写匹配的对象
# print(str3)
"""定义一个函数 用随机函数生成随机的11位数字 使用正则匹配符合规定的手机号码进行打印 一旦匹配到了就打印
没有匹配到就一直循环匹配"""
import string
import random
# list1 =[]
# def find_phone():
# while True:
#
# num =string.digits
# for i in range(11):
# list1.append(random.choice(num))
# a= "".join(list1)
# b= re.findall("^1[35789]\d{9}",a)
#
# if len(b)>0:
# print(b)
# break
# find_phone()
import re
# def get_phone():
#
# while True:# 不采用while 循环 他只会执行一次函数内部的代码
# #匹配结果不能保证每次都能匹配正确手机,所以加上一个while
# # 循环 ,一直去循环函数里面的代码
# num = string.digits
# list1 =[]
# for i in range(11):
# list1.append(random.choice(num))
# a = ''.join(list1)
# b = re.findall("^1[35789]\d{9}",a)
# """ while 是一个死循环-->这个时候我需要给这个while一个终止
# 的条件,使用break来进行终止 使用if来判断匹配的结果 """
# if len(b)>0:
# break # 一旦条件成立时,我就立马终止循环
# print(b)
# get_phone()
"""连接数据库的模块:属于一个第三方的模块:pymsql"""
import pymysql
"""host user password密码 databass我要操作的数据库 port 数据库端口"""
db = pymysql.connect(host="192.168.2.182",user="root",
password="123456",database="hao",port=3306)
"""cursor 存储执行完成返回的sql结果"""
result =db.cursor()
# result.execute("insert into cc(s_id,score)values(10040y,1141)")
result.execute("select * from cc;")
all = result.fetchall()
print(all)
|
|