欢迎来到代码驿站!

Python代码

当前位置:首页 > 软件编程 > Python代码

PyQt5 QLineEdit输入的子网字符串校验QRegExp实现

时间:2022-05-04 11:25:20|栏目:Python代码|点击:

自己编写的用于对lineEdit编辑框输入的子网,例如:192.168.60.1/24字符串校验是否合规。

# 限制lineEdit编辑框只能输入./字符和数字
reg = QRegExp('[0-9./]+$')
validator = QRegExpValidator(self)
validator.setRegExp(reg)
self.lineEditSubNet.setValidator(validator)
 def SubnetVerification(self, strTempSubNet):
  """
  对输入的子网字符串进行校验
  """
  # 对输入的交换机子网地址及子网掩码格式进行校验
  if strTempSubNet.count('/') == 1:
   pass
  else:
   # 警告信息框
   win32api.MessageBox(0, "请输入正确的子网,例:192.168.60.1/24", "温馨提示", win32con.MB_ICONWARNING)
   return False

  strListNet = strTempSubNet.split('/')

  if strListNet[0] != '' and strListNet[1] != '':
   pass
  else:
   # 警告信息框
   win32api.MessageBox(0, "请输入正确的子网,例:192.168.60.1/24", "温馨提示", win32con.MB_ICONWARNING)
   return False

  self.strIP = strListNet[0]
  self.strSubMaskNum = strListNet[1]
  # print(self.strIP)
  # print(self.strSubMaskNum)

  if 1 <= int(self.strSubMaskNum, 10) <= 32:
   pass
  else:
   # 警告信息框
   win32api.MessageBox(0, "请输入正确的子网,例:192.168.60.1/24", "温馨提示", win32con.MB_ICONWARNING)
   return False

  # 对输入的交换机子网地址进行校验
  # 判断是否符合IP地址中有3个.
  if self.strIP.count('.') == 3:
   pass
  else:
   # 警告信息框
   win32api.MessageBox(0, "请输入正确的子网,例:192.168.60.1/24", "温馨提示", win32con.MB_ICONWARNING)
   return False

  strList = self.strIP.split(".")
  # print(strList)
  if strList[0] != '' and strList[1] != '' and strList[2] != '' and strList[3] != '':
   pass
  else:
   # 警告信息框
   win32api.MessageBox(0, "请输入正确的子网,例:192.168.60.1/24", "温馨提示", win32con.MB_ICONWARNING)
   return False

  nList = list(map(int, strList))

  if 0 <= nList[0] <= 255 and 0 <= nList[1] <= 255 and 0 <= nList[2] <= 255 and 0 <= nList[3] <= 255:
   pass
  else:
   # 警告信息框
   win32api.MessageBox(0, "请输入正确的子网,例:192.168.60.1/24", "温馨提示", win32con.MB_ICONWARNING)
   return False

  return True

上一篇:Python 实现局域网远程屏幕截图案例

栏    目:Python代码

下一篇:Python编程基础之运算符重载详解

本文标题:PyQt5 QLineEdit输入的子网字符串校验QRegExp实现

本文地址:http://www.codeinn.net/misctech/200980.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有