导航:首页 > 编程语言 > python正则表达式匹配ip

python正则表达式匹配ip

发布时间:2022-03-06 14:51:23

‘壹’ python正则表达式匹配Ip地址和文件地址

‘贰’ 正则匹配ip

正则表达式获取汉子、数字、字母的方法
'正则取汉字!
str = "山a里b有c322个和d尚一e次打f水 打了2233桶水"
Dim Rlt()
Dim regEx, Match, Matches, i
i = 0
Set regEx = New RegExp
regEx.IgnoreCase = True
Execute "regEx.Global = True"
regEx.pattern = "[u4E00-u9FA5]"
Set Matches = regEx.Execute(str)
ReDim Rlt(Matches.Count)
For Each Match in Matches
Rlt(i) = Match.Value
i = i + 1
Next
MsgBox Join(rlt,"")

'正则取数字!
str = "山a里b有c322个和d尚一e次打f水 打了2233桶水"
Set regEx = New RegExp
regEx.IgnoreCase = True
Execute "regEx.Global = True"
regEx.pattern = "d+"
Set Matches = regEx.Execute(str)
ReDim Rlt(Matches.Count)
For Each Match in Matches
Rlt(i) = Match.Value
i = i + 1
Next
MsgBox Join(rlt,"")

'正则取字母!
str = "山a里b有c322个和d尚一e次打f水 打了2233桶水"
Dim Rlt()
Dim regEx, Match, Matches, i
i = 0
Set regEx = New RegExp
regEx.IgnoreCase = True
Execute "regEx.Global = True"
regEx.pattern = "[a-zA-Z]"
Set Matches = regEx.Execute(str)
ReDim Rlt(Matches.Count)
For Each Match in Matches
Rlt(i) = Match.Value
i = i + 1
Next
MsgBox Join(rlt,"")

-------------------------------------
正则通用函数版(进阶篇)
语法:返回值=正则(参数1, 参数2)
参数1:字符串,放入想过滤的字符串
参数2:整数,想过滤的模式,0为取汉字,1为取数字,2为取英文字母,3为取英文字母和数字,4为排除数字
另外可使用字符串模式
ex:"12345abcde" 代表只取数字12345跟英文小写abcde
ex:"^12345abcde" 代表排除数字12345跟英文小写abcde
如果想取符号的话,在想要取的符号前面加
ex:",.?:;" 代表取符号 ,.?:;
返回值:字符串,取出之后的结果
应用范例:
汉字=正则("a536小b4冉4cj1521博d11ja客Dg",0)
TracePrint 汉字 ' 返回=小冉博客
数字=正则("ranlingqi.com/wordpress500bug.html",1)
TracePrint 数字 ' 返回=500 //如果是500bug1.html 则返回 5001
字母=正则("ranlingqi.com/wordpress500bug.html",2)
TracePrint 字母 ' 返回=ranlingqicomwordpressbughtml
//---模式3,模式4就不举例了,自己尝试吧!~~~
取字符串=正则("a536小b4冉4cj1521博d11ja客Dg","a4b")
TracePrint 取字符串 ' 返回=ab44a
排除字符串=正则("a536小b4冉4cj1521博d11ja客Dg","^a45b36")
TracePrint 排除字符串 ' 返回=小冉cj1,21博d11j客Dg

Function 正则(字符串, 模式)
//--模式0=取汉字,模式1=取数字,模式2=取英文字母,模式3=取英文字母和数字,模式4=排除数字
//--模式为字符串=只取或排除该字符串内有的字符
Dim mode,TQstring
Select Case 模式
Case 0
mode="[u4E00-u9FA5]"
Case 1
mode="d+"
Case 2
mode = "[a-zA-Z]"
Case 3
mode = "[a-zA-Z0-9]"
Case 4
mode = "[^0-9]"
Case Else
mode = "[" & 模式 & "]"
End Select
TQstring = "Dim i" & vbCrLf
TQstring = TQstring & "Dim regEx, Match, Matches" & vbCrLf
TQstring = TQstring & "i = 0" & vbCrLf
TQstring = TQstring & "Set regEx = New RegExp " & vbCrLf
TQstring = TQstring & "regEx.IgnoreCase = True " & vbCrLf
TQstring = TQstring & "regEx.Global = True" & vbCrLf
TQstring = TQstring & "regEx.pattern ="""& mode &"""" & vbCrLf
TQstring = TQstring & "Set Matches = regEx.Execute("""& 字符串 &""")" & vbCrLf
TQstring = TQstring & "ReDim Rlt(Matches.Count)" & vbCrLf
TQstring = TQstring & "For Each Match in Matches " & vbCrLf
TQstring = TQstring & "Rlt(i) = Match.Value" & vbCrLf
TQstring = TQstring & " i = i + 1" & vbCrLf
TQstring = TQstring & "Next" & vbCrLf
TQstring = TQstring & "Set regEx = Nothing"
Execute TQstring
正则 = Join(Rlt, "")
End Function

小冉博客看到的 ranlingqi.com

‘叁’ python中匹配ip的正则表达式 如果我要匹配192.168.*.*的网段呢 新手求教!!

importre
reg=re.compile(r"(?<![0-9.])((2[0-4][0-9]|25[0-5]|[01]?[0-9]{1,2}).){3}(2[0-4][0-9]|25[0-5]|[01]?[0-9]{1,2})(?![0-9.])")

(?<![0-9.])((2[0-4][0-9]|25[0-5]|[01]?[0-9]{1,2}).){3}(2[0-4][0-9]|25[0-5]|[01]?[0-9]{1,2})(?![0-9.])

从文本中匹配ip的正则表达式

importre
reg=re.compile(r"(?<![d.])192.168(.(2[0-4]d|25[0-5]|[01]?d{1,2})){2}(?![d.])")
(?<![d.])192.168(.(2[0-4]d|25[0-5]|[01]?d{1,2})){2}(?![d.])

在文本中匹配 192.168网段的正则表达式

‘肆’ 如何使用正则表达式匹配IP地址

<%
'asp 的

Set reg = New RegExp
reg.Pattern = "^123.123(.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){2}$"
reg.IgnoreCase = True
reg.Global = True
response.Write(reg.test("123.123.25.25"))

%>

//javaScript 的

<script type="text/javascript">
var reg = /^123.123(.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){2}$/;
alert(reg.test("123.123.25.25"));
</script>

‘伍’ Python正则表达式匹配IP地址的问题

表示非捕获组,即只匹配这个组里面的内容,而不会将这个组添加到group中,不占用group的位置。

‘陆’ python 正则表达式.*如何把ip地址提取出来

#!/usr/bin/envpython
#-*-coding:utf-8-*-

importre

html='<bodystyle="margin:0px"><center>您的IP是:[42.120.74.89]来自:浙江省杭州市阿里云</center></body></html>'
reg=re.compile(r'[(d{1,3}.d{1,3}.d{1,3}.d{1,3})]')
item=re.findall(reg,html)

printitem[0]

‘柒’ 请教Python中匹配IP的正则表达式

下面是IPv4的IP正则匹配表达式

importre
#简单的匹配给定的字符串是否是ip地址,下面的例子它不是IPv4的地址,但是它满足正则表达式
ifre.match(r"^(?:[0-9]{1,3}.){3}[0-9]{1,3}$","272.168,1,1"):
print"IPvaild"
else:
print"IPinvaild"
#精确的匹配给定的字符串是否是IP地址
ifre.match(r"^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$","223.168.1.1"):
print"IPvaild"
else:
print"IPinvaild"
#简单的从长文本中提取中提取ip地址
string_ip="isthis289.22.22.22ip?
result=re.findall(r"(?:[0-9]{1,3}.){3}[0-9]{1,3}",string_ip)
ifresult:
printresult
else:
print"recannotfindip"
#精确提取IP
result=re.findall(r"(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",string_ip):
ifresult:
printresult
else:
print"recannotfindip"

下面是IPv6的正则匹配表达式

string_IPv6="1050:0:0:0:5:600:300c:326b"
#匹配是否满足IPv6格式要求,请注意例子里大小写不敏感
ifre.match(r"^(?:[A-F0-9]{1,4}:){7}[A-F0-9]{1,4}$",string_IPv6,re.I):
print"IPv6vaild"
else:
print"IPv6invaild"
#提取IPv6,例子里大小写不敏感
result=re.findall(r"(?<![:.w])(?:[A-F0-9]{1,4}:){7}[A-F0-9]{1,4}(?![:.w])",string_IPv6,re.I)
#打印提取结果
printresult

‘捌’ 正则表达式匹配ip地址并替换

sed不支持d的数字表达,另外要加-r参数:

‘玖’ python匹配IP和端口

importre
results=re.findall('(?isu)<td>(d+).(d+).(d+).(d+)</td>s*<td>(d+)</td>',your_html)
forip,portinresults:
print'%s:%s'%(ip,port)

阅读全文

与python正则表达式匹配ip相关的资料

热点内容
优信二手车解压后过户 浏览:63
Windows常用c编译器 浏览:780
关于改善国家网络安全的行政命令 浏览:835
安卓如何下载网易荒野pc服 浏览:656
javainetaddress 浏览:106
苹果4s固件下载完了怎么解压 浏览:1005
命令zpa 浏览:288
python编译器小程序 浏览:946
在app上看视频怎么光线调暗 浏览:541
可以中文解压的解压软件 浏览:594
安卓卸载组件应用怎么安装 浏览:914
使用面向对象编程的方式 浏览:341
程序员项目经理的年终总结范文 浏览:932
内衣的加密设计用来干嘛的 浏览:434
淮安数据加密 浏览:294
魔高一丈指标源码 浏览:983
松下php研究所 浏览:169
c回调java 浏览:402
梦幻端游长安地图互通源码 浏览:747
电脑本地文件如何上传服务器 浏览:315