正则表达式验证IP地址合法性

首先学习一下正则表达式的语法规则,如下:

IP地址通常是类似:10.221.105.225的格式,不能以0开头,每个字段最大不超过255,不小于0

IP匹配规则:

		String ip = "([1-9]|[1-9][0-9]|1\\d\\d|2[0-4]\\d|25[0-5])\\." +
			     "([1-9]|[1-9][0-9]|1\\d\\d|2[0-4]\\d|25[0-5])\\." +
			     "([1-9]|[1-9][0-9]|1\\d\\d|2[0-4]\\d|25[0-5])\\." +
			     "([1-9]|[1-9][0-9]|1\\d\\d|2[0-4]\\d|25[0-5])";

解释一下:如果当前字段只有1位,那么只能是1-9中的一个数字,如果是两位,由于开头不能是0,所以开头数字是1-9而个位数字可以是0-9,同理,如果是3位数,百分位是1的情况下,十分位和个位没要求,百分位是2,那么十分位只能是 0-4,个位无要求,百分位和十分位分别是255,则个位只能是0-5,前三位要记得后面加一个.

时间: 2024-10-09 02:04:21

正则表达式验证IP地址合法性的相关文章

Js 正则表达式验证IP地址

1.验证方法 function isValidIP(ip) { var reg = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/ return reg.test(ip); } 2.判断 isValidIP(NewIP) == false

正则表达式验证ip地址类型格式是否正确

var ipVerification = /^(?:(?:1[0-9][0-9]\.)|(?:2[0-4][0-9]\.)|(?:25[0-5]\.)|(?:[1-9][0-9]\.)|(?:[0-9]\.)){3}(?:(?:1[0-9][0-9])|(?:2[0-4][0-9])|(?:25[0-5])|(?:[1-9][0-9])|(?:[0-9]))$/; if(!ipVerification.test(moduleIP)){ zeroModal.alert('IP地址格式不正确!');

使用正则表达式验证IP地址

实现效果: 知识运用: 实现代码: public bool validate(string str_IP) { string regex = @"(25[0-5]|2[0-4]\d|[0-1]\d{2}|[0-9]?\d)"; return Regex.IsMatch(textBox1.Text,("^"+regex+"\\."+regex+"\\."+regex+"\\."+regex+"$&q

QT正则表达式---针对IP地址

判断合法IP的QT正则表达式: bool IsIPaddress(QString ip) { QRegExp rx2("(//d+)(//.)(//d+)(//.)(//d+)(//.)(//d +)"); int pos = rx2.indexIn(ip); if(pos>-1)    { for(int i=0;i<4;i++)        {            if( rx2.cap(i*2+1).toInt()>=255 )            {  

Android正则表达式验证邮箱地址

1 // 邮箱有效性验证 2 Pattern pattern = Pattern 3 .compile("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*"); 4 Matcher mc = 5 pattern.matcher(RegistMail.getText().toString().trim()); 其中RegistMail为一个EditText控件,用来处理用户的邮箱输入. Android正则表达式验证邮箱地址,布布扣,bu

使用正则表达式匹配IP地址

如何使用正则表达式匹配IP地址?这是很常见的任务.说难也难,说易也易,取决于在匹配的精确度以及正则表达式复杂度之间很好的折中. 通常,IP地址以点分十进制方式表示,IP地址分为4段,以点号分隔.要对IP地址进行匹配,首先要对其进行分析.0.0.0.0 - 255.255.255.255 一个简单的正则表达式: [0-9]+(?:\.[0-9]+){0,3} 或者 ^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$ 它能够完成我们的任务,但是像"3948.3.89.34238"

C++11标准 STL正则表达式 验证电子邮件地址

转自:http://www.cnblogs.com/yejianfei/archive/2012/10/07/2713715.html 我们最经常遇到的验证,就是电子邮件地址验证.网站上常见.各种网页脚本也都常用“正则表达式”(regular expression)对我们输入的电子邮件地址进行验证,判断是否合法.有的还能分解出用户名和域名.现在用C++语言实现一下电子邮件地址验证程序,用的是C++ 11标准新增加的STL正则表达式. 源代码如下,该代码已在Visual Studio 2010上验

正则表达式验证邮箱的合法性

//利用正则表达式验证邮箱的合法性 -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", email

[LeetCode] Validate IP Address 验证IP地址

In this problem, your job to write a function to check whether a input string is a valid IPv4 address or IPv6 address or neither. IPv4 addresses are canonically represented in dot-decimal notation, which consists of four decimal numbers, each ranging