匹配IP地址的正则表达式实例

正则表达式之ip地址匹配(详细讲解) 从语法上看,完全正确,也达到了我们的题目要求,可是我们有没有注意到,我们日常生活中所用的ip地址每一位都是在0-255之间,但是我们上面写的表达式会匹配0-999之间的所有ip地址,如果在未来的工作中,有这样的需求,要匹配所有合法的ip地址,那么我们上面所写的正则表达式是不是就不符合要求了,这里就需要我们使用子表达式的嵌套(表达式为:((1\d{2}.)|(2[0-5]{2}.)|(\d{1,2}.)){3}((\d{1,2})|(1\d{2})|(2[0-5]{2}))),伙伴们可以一起实践一下! 阅读详情
package com.accel.dashboard.tool;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.HashSet;
import java.util.Set;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * Created by jason.zhan on 9/10/2014.
 */
public class IPScanner {

    private IPScanner() {}

    private static class IPScannerFactory {
        private static IPScanner instance = new IPScanner();
    }

    public static IPScanner getIPScanner() {
        return IPScannerFactory.instance;
    }

    public Object readResolve() {
        return getIPScanner();
    }

    /**
     * @return All the Server IP.
     *
     * @param cmd Your command.
     *
     */
    public Set<String> getServerIP(String cmd) {
        BufferedReader bufferedReader = null;
        Set<String> iPSet = new HashSet<String>();
        String command = "cmd.exe /c arp -a";
        if (cmd != null) {
            command = cmd;
        }
        try {
            Process process = Runtime.getRuntime().exec(command);
            bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
            String regex = "(?:(?:25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))\\.){3}(?:25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))";
            String line = null;
            StringBuilder stringBuilder = new StringBuilder();
            Matcher matcher = null;
            while ((line = bufferedReader.readLine()) != null) {
                stringBuilder.append(line);
            }
            matcher = Pattern.compile(regex).matcher(stringBuilder);
            while (matcher.find()) {
                iPSet.add(matcher.group(0));
            }
            //System.out.println(stringBuilder);
        } catch (Exception e1) {
            e1.printStackTrace();
            iPSet = null;
        } finally {
            if (bufferedReader != null) {
                try {
                    bufferedReader.close();
                } catch (Exception e2) {
                    e2.printStackTrace();
                }
            }
        }
        return iPSet;
    }
}

Python爬虫 正则表达式应用详解 Python爬虫(二十一) 学习Python爬虫过程中的心得体会以及知识点的整理,方便我自己查找,也希望可以和大家一起交流。 —— 正则表达式应用详解 —— 文章目录Python爬虫(二十一)—— 正则表达式应用详解 ——1. 1. 正则表达式:regular expression,也称regex,简称 RE 正则表达式是用来简洁表达一组字符串的表达式 通用的字符串表达框架 简洁表达一... 阅读详情

相关推荐

Python正则表达式匹配IP地址实例

在Python中,我们可以使用正则表达式来匹配IP地址。IP地址是网络通信中常用的标识符,它由四个数字组成,每个数字的取值范围是0到255。通过使用正则表达式,我们可以方便地验证IP地址的格式,确保输入的IP地址符合所需的要求。如果给定的字符串匹配了模式,则说明它是一个有效的IP地址。否则,它不是一个有效的IP地址。函数来测试不同的IP地址。根据函数的输出,我们可以确定每个IP地址是有效的还是无效的。,并使用正则表达式来检查该字符串是否符合IP地址的格式。在上面的代码中,我们定义了一个名为。

ByteBuster的博客 576

正则表达式-匹配ip及rtsp

IP地址是指互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),是IP Address的缩写。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。 IP地址的长度为32位(共有2^32个IP地址),分为4段,每段8位,用十进制数字表示,每段数字范围为0~255,段与段之间用句点隔开。...

Eddie-Wang的博客 2535

正则表达式匹配IP的表达式(推荐)

这里给大家详细讲解一下一个匹配IP地址的正则表达式,   有关正则方面的知识,会在详细的讲解中提到。   在讲解之前,我先给大家介绍一下,ip地址的生成规则。   IP地址,是由32位数字二进制转为四个十进制的字符串组成。   怎么转化?下面讲解:       二进制:11111111111111111111111111111111       分为四部分:11111111.11111111.11111111.11111111       转化:2^7+2^6+2^5+2^4+2^3+2^2+2^1+2^0=255       转为十进制范围:0~255.0~255.0~255.0~255  

正则表达式匹配IP地址

1. IP段都表示一个字节,即只能在 0~255之间。 所以一个正确的IP应该是:(0~255) .(0~255) .(0~255) .(0~255) 通过观察可以发现可以将整个IP分为两部分匹配,即:(0~255) 和 .(0~255) 3次 2. 0~255可以分两部分匹配 0~199 和 200~255 a) 0~199 正则表达式为 [0-1]?\d{1,2} [0-1]? 表示匹配 0或1一次或零次 \d 表示匹配任意一个十进制数字,即 0~9 {1,2} 表示

xh888zw的博客 7764

S32K144 ADC硬件触发实战:PDB与TRGMUX配置避坑指南

本文深入解析了S32K144微控制器中ADC硬件触发的两种核心方案:PDB与TRGMUX。通过对比其架构差异、详细配置流程及常见问题排查,提供了从寄存器操作到DMA联动的完整优化指南,旨在帮助开发者解决多通道采样时序不稳、CPU负载过高等实际难题,实现高效稳定的数据采集。

weixin_29168153的博客 443

ContextCapture导入点云进行重建

ContextCapture导入点云进行重建

天桥飞熊的博客 1万+

Python中如何用正则表达式精准匹配IP地址?

IPv4地址的正则表达式原理如何精确匹配0-255的数字段边界匹配的重要性实际应用中的使用技巧记住:正则表达式虽然强大,但也要根据实际需求选择合适的复杂程度。对于简单的IP验证,本文的表达式已经足够;如果需求更复杂,可能需要进一步调整。希望这篇文章能帮你在下次处理IP地址时事半功倍!

程序员总部的博客 1979

十一、学生信息管理系统(PyQt5+MySQL+PyMySQL模块实现)

学生信息管理系统(PyQt5+MySQL+PyMySQL模块实现)

ungoing的博客 8991

正则表达式匹配IP的表达式分享

写到这里,正则匹配IP的表达式已经出来了,不过,这并不是最终的匹配IP的正则表达式,为什么呢?很简单,正则表达式会对每一个分组都进行捕获匹配,上面把匹配IP分成了那么多分组,而每一个分组的内容都会被正则所捕获,那上面不知道已经捕获多少IP了,呵呵,那么怎么去掉分组的内容呢?首先,我要提一下,正则是没有办法做数字运算的,所以,我们无法用数字运算的方式筛选出IP的数字范围。写到这里,数字的匹配范围正则表达式已经写好了,那么根据我前面的思路: 第一部分:匹配3个0~255.(注意后面的一个点)

xiaoweids的博客 1442

视觉语言模型在三维导航中的应用:JanusVLN项目解析与实战

视觉语言模型(VLM)作为多模态人工智能的核心技术,通过融合视觉感知与自然语言理解能力,实现了对开放世界场景的语义化解析。其原理在于利用预训练的视觉编码器和大型语言模型,将图像信息映射到与文本对齐的语义空间,从而完成跨模态的推理与生成。这一技术为机器人自主交互、智能家居控制等场景提供了基础能力支撑,尤其在需要理解复杂指令并执行序列决策的任务中展现出巨大价值。本文聚焦于视觉语言导航(VLN)这一具体应用,探讨如何通过架构创新与高效微调策略,将通用VLM适配到三维仿真环境中的导航任务,并以JanusVLN项目为

weixin_30240349的博客 670

45、概率与模糊性:粗糙事件与模糊事件概率的探索

本文探讨了概率理论与模糊性理论在处理现实世界不确定性中的应用,重点分析了模糊事件和粗糙事件的概率定义、性质及其条件概率。同时,介绍了近似贝叶斯网络分类器在信息系统中的应用,以及如何通过概率决策约简提高分类效率。这些方法为处理不确定信息提供了灵活的工具,并在决策和数据分析中具有重要价值。

ik67890123的博客 135

python正则匹配ip地址_Python正则表达式匹配ip地址实例

Python正则表达式匹配ip地址实例更新时间:2014年10月09日 11:22:51 投稿:shichen2014这篇文章主要介绍了Python正则表达式匹配ip地址实例,通过简单的实例讲述了re模块的用法,该实例非常具有实用价值,需要的朋友可以参考下相关文章这篇文章主要介绍了centos6.8安装python3.7无法import _ssl的解决方法,小编觉得挺不错的,现在分享给大家,也...

weixin_39683021的博客 137

用 Message Monitoring Overview 打造接口健康驾驶舱:SAP AIF 消息监控实战解析

究竟解决了什么痛点?概括起来,这个应用把SAP AIF的接口监控,从传统的事务码和技术视角,带到了一个更加直观、业务友好的层次:(通过卡片式总览,让你在一个页面上看到所有自己负责的接口及其健康状况。通过和的联动,实现了从接口态势到具体消息的快速钻取。通过Recipient模型和应用,实现了监控职责的灵活分配。借助拖拽排序、搜索过滤等特性,让每个运维人员都可以打造属于自己的接口健康 cockpit。如果你正在做S/4HANA或项目,无论是公有云还是本地部署,只要系统启用了SAP AIF。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 107

正则表达式的使用——匹配手机号码、IP地址实例讲解

一、使用场景 典型的搜索和替换操作要求您提供与预期的搜索结果匹配的确切文本。虽然这种技术对于对静态文本执行简单搜索和替换任务可能已经足够了,但它缺乏灵活性,若采用这种方法搜索动态文本,即使不是不可能,至少也会变得很困难。 通过使用正则表达式,可以: 测试字符串内的模式。 例如,可以测试输入字符串,以查看字符串内是否出现电话号码模式或信用卡号码模式。这称为数据验证。 替换文本。 可以使用...

Honiler的博客 1万+

【Zephyr电源与功耗专题】13_PMU电源驱动介绍

本文介绍的PMU芯片包含2路DCDC和6路LDO,在Zephyr实时操作系统下实现了完整的电源管理解决方案。

zero的博客 843

泛微OA集成阿里云短信(E9保姆教程)

泛微OA集成阿里云短信(E9保姆教程)

技术分享 515

java正则匹配ip_匹配IP地址的正则表达式实例

package com.accel.dashboard.tool;import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.HashSet;import java.util.Set;import java.util.regex.Matcher;import java.util.regex.Patt...

weixin_31001313的博客 593

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

linux下正则匹配IP地址,shell通过正则匹配ip地址实例代码

前言在运维场景下,我们经常需要在服务器上用正则表达式来匹配ip地址。shell和其它编程语言一样,也可以使用正则分组捕获,不过不能使用 $1或\1这样的形式来捕获分组,可以通过数组${bash_rematch}来获得,如${bash_rematch[1]},${bash_rematch[n]}ip分成5大类:a类地址⑴ 第1字节为网络地址,其它3个字节为主机地址。⑵ 范围:1.0.0.1—126....

weixin_30753213的博客 1037

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

【Python爬虫学习】五、正则表达式

正则表达式的优势 简洁,可以很简洁的表达一组字符串的特征,一行胜千言,主要用于字符串匹配 正则表达式的使用 编译:将符合正则表达式语法的字符串转换成正则表达式特征 编译后的特征与一组字符串是对应的,而编译前的只是一个符合正则表达式语法的单一字符串,并不是真正意义上的正则表达式 正则表达式的语法 正则表达式的语法是由字符和操作符构成 操作符: 注意,\w表示A-Z,a-z...

Guanhai1617的博客 392

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

C++正则表达式

正则表达式 Regex(Regular Expression)是描述或匹配某个句法规则的字符串,用于检索、替换那些匹配某个模式的文本。 一个正则表达式通常被称为一个模式。由表达式、量词、断言组成。

码上看世界 3031

Shell编程:正则表达式(通配符、正则概念、元字符、量词、示例等)

正则表达式(Regular Expressions,REGEXP)是一种由特殊字符和文本字符组成的模式,用于匹配和处理文本内容。与通配符不同,正则表达式不仅限于文件名匹配,还可以对文本内容中的字符进行匹配和筛选。正则表达式被许多程序和开发语言广泛支持,如 vim、less、grep、sed、awk、nginx、mysql 等。

shyuu的博客 1758

Python正则表达式(正则、regular、re)讲解,及常用正则:匹配邮箱、身份证、手机号、IP地址、URL、HTML等

正则表达式(正则、regular、re)是 Python 中最常见的编程技巧,很多时候,一个好的正则表达式可以抵上几十行代码。比如:匹配(校验)邮箱、身份证、手机号、IP地址、URL、HTML等。 正则表达式,其实就是一串特殊的字符序列,而这串字符序列蕴含着事先定义好的 模式 (规则),可以用于匹配、校验其它的字符串(文本、网页等)。 但想掌握正则表达式的难度在于,其包括了较多的 基础模式语法 需...

qq_39839807的博客 2360

匹配IP字串、域名的正则表达式

正确的URL正则表达式应为:    http(s)?://([/w-]+/.)+[/w-]+(/[/w- ./?%&=]*)?   正确的IP地址正则表达式应为:    ((25[0-5])|(2[0-4]/d)|(1/d/d)|([1-9]/d)|/d)(/.((25[0-5])|(2[0-4]/d)|(1/d/d)|([1-9]/d)|/d)){3}正确的URL加IP正则表达式应为:    (

lxy_abcde1190的专栏 4602

正则表达式

一.什么是正则表达式 维基百科:正则表达式(英语:Regular Expression,常简写为regex、regexp或RE),又称正则表示式、正则表示法、规则表达式、常规表示法,是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些匹配某个模式的文本。 二.正则表达式的常用操作符 操作符 说明 实例 . 表示任何单个字符 万能字符匹配 [ ] 字符集,对单个字符给出取值范围 [ abc] 表示

taoxing 625

正则表达式笔记

文章目录1.正则表达式笔记 1.正则表达式笔记 ​ [...]可以表示范围内搜索(字符组),比如 初级:9===> re.search(r'[0-1]',9) <re.Match object; span=(0, 1), match='9'> ​ 高级:245 ===>re.search(r'[01]\d\d|2[0-4]\d|25[0-5]','245') <re.Match object; span=(0, 3), ma

qq_45946238的博客 287
上一篇: Java将其他进制字符串转为十进制和用英文句号分割字符串
下一篇: 网页自适应屏幕宽度
ithouse
博客等级 码龄12年 200粉丝 212原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ithouse

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值