正则表达式

1.正则:

作用是,字符串的查找和替换。

正则是跨语言、任何语言都都可以用正则来处理,属于通用的和json一样

 

2.正则表达式 包含 原本字符和元字符两种

元字符如下:

.点 -->匹配除“\n”和"\r"之外的任何单个字符。要匹配包括“\n”和"\r"在内的任何字符,请使用像“[\s\S]”的模式。

\d --->匹配一个数字字符。等价于[0-9]。grep 要加上-P,perl正则支持

限定符:

+ 代表至少匹配一次

?代表最大匹配一次

* 代表匹配0次或者多次

() 表示一个组 ,标记一个表达式的开始和结束

 

正则的两个写法:

 

import re  #需要使用到re

'''需要替换的字符串'''
admin_user = '17799801359'
admin_pwd = '123456'

data = {"admin_user":"17799801359","admin_pwd":"123456"}
s = '{"mobilephone":"${admin_user}","pwd":"${admin_pwd}"}'

# p = "\$\{admin_user}" #原本字符的写法,全部找到并且替换
# m = re.search(p,s)
# print(m)

p1 = "\$\{(.*?)}" #元字符和限定符写法---->推荐使用,找到一个替换一个
m = re.search(p1,s)
print(m)
g = m.group()
g1 = m.group(1) #取一个组的匹配字符串
print(g1)
value = data[g1]
s = re.sub(p1,value,s,count=1) #查找全部,使用的是findall查找
print("使用正则表达式查找,并且替换",s)

 

 

 

posted @ 2019-11-19 22:45  weihanchen  阅读(127)  评论(0编辑  收藏  举报