[英]Regular expression for isolating Comcast IP addresses in access log file for Apache
正则表达式解决方案是可能的,但是非常麻烦,因为子网掩码不是8的倍数。您将需要编写一个函数来处理列表并将其转换为正则表达式。
最好使用regex来获取IP地址并通过Comcast对IP地址列表中的IP地址进行测试。 一个简单的实现就是一个集合,它允许您搜索小于参数的最接近的数字。
那是很多IP地址。
例如, 24.0.0.0/12
定义IP范围24.0.0.1
- 24.15.255.255
。 要将这些数字范围与正则表达式匹配 :
24: 24
0-15: [0-9]|1[0-5]
0-255: [0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]
这使
(24)\.([0-9]|1[0-5])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])
那仅是24.0.0.0/12
和293。
如果您确实想这样做,则应编写一个小脚本,以将每个IP范围自动转换为正则表达式。
另一种方法是匹配任何IP地址,并将其输入到使用适当的模块/框架/ API进行匹配的回调中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.