通过正则表达式验证IP和端口格式的正确性

 更新时间:2020-01-26 15:00:29   作者:佚名   我要评论(0)

在网页开发中可能会遇到需要对在页面输入的ip和端口进行正确性验证,那么正则表达式就是最有力的工具:
1:ip的正则表达式:
格式是由“.”分割的四部分,每部分的范

在网页开发中可能会遇到需要对在页面输入的ip和端口进行正确性验证,那么正则表达式就是最有力的工具:

1:ip的正则表达式:

格式是由“.”分割的四部分,每部分的范围是0-255;

每段的正则可以分几部分来写:200—255;100-199;10-99;0-9;

每一部分对应的正则表达式:   2[0-4]\d|25[0-5];   1\d{2};      [1-9]\d;  \d

所以连起来就是\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5]

那么IP的正则就是(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])

在JS中表示为:/^(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$/

2:端口的正则表达式:

格式是0-65535,。

同理可以分为几部分来构造:60000-65535;10000-59999;1000-9999;100-999;10-99;0-9;

每部分的正则是:           6[0-4]\d{4}|65[0-4]\d{2}|655[0-2]\d|6553[0-5];       [1-5]\d{4};      [1-9]\d{3};     [1-9]\d{2};[1-9]\d; [0-9]

整理完就是:([0-9]|[1-9]\d{1,3}|[1-5]\d{4}|6[0-4]\d{4}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])

JS中表示为:/^([0-9]|[1-9]\d{1,3}|[1-5]\d{4}|6[0-4]\d{4}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$/

总结

以上所述是小编给大家介绍的正则表达式验证IP和端口格式的正确性,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

您可能感兴趣的文章:

  • 2019手机号码JS正则表达式验证实例代码
  • JS中验证整数和小数的正则表达式
  • Js中使用正则表达式验证输入是否有特殊字符
  • 详解正则表达式实现二代身份证号码验证
  • JavaScript+Regex 身份证号码的正则表达式及验证详解
  • Android 2018最新手机号验证正则表达式方法

相关文章

  • 通过正则表达式验证IP和端口格式的正确性

    通过正则表达式验证IP和端口格式的正确性

    在网页开发中可能会遇到需要对在页面输入的ip和端口进行正确性验证,那么正则表达式就是最有力的工具: 1:ip的正则表达式: 格式是由“.”分割的四部分,每部分的范
    2020-01-26
  • Eclipse使用正则表达式快速修改代码的方法

    Eclipse使用正则表达式快速修改代码的方法

    背景: 因为pyhon2.7将停止维护,公司pyhon项目需要将python版本从2.7升级到3.8。 所以在python中例如 data.has_key('json')将不可使用了,那么需要全部更换成'json
    2020-01-26
  • python 利用正则表达式提取特殊信息

    python 利用正则表达式提取特殊信息

    1、删除字符串中的 Python注释 案例: import re time = "2020-01-01 # 这是一个日期" num = re.sub(r'#.*$', "", time)#以#为分隔,去掉后面的信息 print("这个
    2020-01-26
  • Python正则表达式匹配字符串中的数字

    Python正则表达式匹配字符串中的数字

    1.使用“\d+”匹配全数字 代码: import re zen = "Arizona 479, 501, 870. Carlifornia 209, 213, 650." m = re.findall("\d+", zen) print(m) 结果: ['47
    2020-01-26
  • 常用正则表达式大全(金钱,非负整数,正整数,邮箱,手机号码)

    常用正则表达式大全(金钱,非负整数,正整数,邮箱,手机号码)

    什么是正则表达式? 正则表达式是由一个字符序列形成的搜索模式。 当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。 正则表达式可以是一个简单的
    2020-01-26
  • tensorflow查看ckpt各节点名称实例

    tensorflow查看ckpt各节点名称实例

    运行下列脚本,可以打印出模型各个节点变量的名称: from tensorflow.python import pywrap_tensorflow import os checkpoint_path=os.path.join('model.ckpt-13
    2020-01-26
  • python定义类self用法实例解析

    python定义类self用法实例解析

    这篇文章主要介绍了python定义类self用法实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在定义类的
    2020-01-26
  • 使用Python实现Wake On Lan远程开机功能

    使用Python实现Wake On Lan远程开机功能

    Wake-On-LAN简称WOL,是一种电源管理功能;如果存在网络活动,则允许设备将操作系统从待机或休眠模式中唤醒。许多主板厂商支持IBM提出的网络唤醒标准。该标准允许网
    2020-01-26
  • django 文件上传功能的相关实例代码(简单易懂)

    django 文件上传功能的相关实例代码(简单易懂)

    一、新建项目,在主配置文件中,修改以下内容: ALLOWED_HOSTS = ['127.0.0.1','localhost'] MEDIA_ROOT = os.path.join(BASE_DIR,'media') STATICFILES_DIRS = [
    2020-01-26
  • 使用tensorflow DataSet实现高效加载变长文本输入

    使用tensorflow DataSet实现高效加载变长文本输入

    DataSet是tensorflow 1.3版本推出的一个high-level的api,在1.3版本还只是处于测试阶段,1.4版本已经正式推出。 在网上搜了一遍,发现关于使用DataSet加载文本的资料
    2020-01-26

最新评论