正则表达式IP地址

正则表达式基础语法

正则表达式-字符类

c 复制代码
[abc]:代表a或者b,或者c字符中的一个。
[^abc]:代表除a,b,c以外的任何字符。
[a-z]:代表a-z的所有小写字符中的一个。
[A-Z]:代表A-Z的所有大写字符中的一个。
[0-9]:代表0-9之间的某一个数字字符。
[a-zA-Z0-9]:代表a-z或者A-Z或者0-9之间的任意一个字符。
[a-dm-p]:a 到 d 或 m 到 p之间的任意一个字符。

逻辑运算符

c 复制代码
&&:并且
| :或者(可以省略)

预定义字符

c 复制代码
"." : 匹配任何字符。
"\d":任何数字[0-9]的简写;
"\D":任何非数字[^0-9]的简写;
"\s": 空白字符:[ \t\n\x0B\f\r] 的简写
"\S": 非空白字符:[^\s] 的简写
"\w":单词字符:[a-zA-Z_0-9]的简写
"\W":非单词字符:[^\w]

数量词

c 复制代码
x? : 0次或1次
x* : 0次到多次
x+ : 1次或多次
X{n} : 恰好n次
X{n,} : 至少n次
X{n,m}: n到m次(n和m都是包含的,最少n次,最多m次。

ip地址匹配

error1

c 复制代码
\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}
等同于(\d{1,3}\.){3}\d{1,3} 
匹配范围:0-999.0-999.0-999.0-999

error2

c 复制代码
((1\d{2}.)|(2[0-5]{2}.)|(\d{1,2}.)){3}((\d{1,2})|(1\d{2})|(2[0-5]{2})))
239这类的匹配不了

正确匹配

cpp 复制代码
(^((2[0-4]\d.)|(25[0-5].)|(1\d{2}.)|(\d{1,2}.))((2[0-5]{2}.)|(1\d{2}.)|(\d{1,2}.){2})((1\d{2})|(2[0-5]{2})|(\d{1,2})))
相关推荐
我材不敲代码10 小时前
Python 正则表达式进阶实战:从文本清洗到复杂信息提取
c++·python·正则表达式
水木流年追梦1 天前
大模型入门-Reward 奖励模型训练
开发语言·python·算法·leetcode·正则表达式
水木流年追梦2 天前
大模型入门-RL基础
开发语言·python·算法·leetcode·正则表达式
IT大白鼠3 天前
2019年Cloudflare全球宕机事件技术分析:正则表达式回溯失控与互联网基础设施脆弱性研究
运维·正则表达式·去中心化
XMYX-05 天前
33 - Go 文本模板 template:从入门到原理深挖
golang·正则表达式
XMYX-05 天前
32 - Go 正则表达式:从匹配字符串到理解 RE2 引擎
golang·正则表达式
程序员榴莲5 天前
Python 正则表达式入门:从匹配手机号到提取文本内容
python·正则表达式
红茶要加冰7 天前
七、正则表达式
linux·运维·正则表达式·shell
Pocker_Spades_A7 天前
Python快速入门专业版(五十八)——正则表达式(re):爬虫文本提取利器(从语法到实战)
爬虫·python·正则表达式
红茶要加冰8 天前
九、文本处理三剑客——sed
linux·运维·服务器·正则表达式·shell