2016年3月20日 星期日

[python] regex find all ip and replace ip address 取代所有 ip address


[python] regex find all ip and replace ip address  取代所有 ip address 

regex
([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})

\1 是 match group 本身

如果只想找出 valid IP 可以使用下面這個正則表示式
On only valid IP's:
re.sub('(?:(?: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]?)','CENSORED_IP',data)

def replace_all_ip(html):
if html:
html = re.sub('([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})',r'<a href="https://myhome/\1">\1</a>',html)
'''
p = re.compile('[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')
iters = p.finditer(html)
for m in iters:
   #print m.group(),m.start(),m.end(),m.span()
   ip = m.group()
   ip_blok = '<a href="%s%s">%s</a>' % (site,ip,ip)
   html = html[:m.start()]+ip_blok+html[m.end():]
'''
return html


How to search for IPs in Files using Python? - Stack Overflow
http://stackoverflow.com/questions/11289901/how-to-search-for-ips-in-files-using-python

沒有留言:

張貼留言