it is all about corner-cases...

class Solution(object):
def validIP4(self, IP):
def validNum4(s):
try:
# leading zero, negative
if (s[] == '' and len(s) > ) or s[] == '-':
return False
# value range
v = int(s)
if not (v >= and v <= ):
return False
except ValueError:
return False
return True arr = IP.split(".")
for s in arr:
if len(s) == :
return False
if not validNum4(s):
return False
return True def validIP6(self, IP):
def validNum6(s):
s = s.lower()
for c in s:
if not ((c >= '' and c <= '') or (c >= 'a' and c <= 'f')):
return False
return True arr = IP.split(":")
for s in arr:
if len(s) == or len(s) > :
return False if not validNum6(s):
return False
return True def validIPAddress(self, IP):
"""
:type IP: str
:rtype: str
"""
bIs4 = len(IP.split(".")) ==
if bIs4:
if self.validIP4(IP):
return "IPv4"
bIs6 = len(IP.split(":")) ==
if bIs6:
if self.validIP6(IP):
return "IPv6"
return "Neither"

LeetCode "468. Validate IP Address"的更多相关文章

  1. 【LeetCode】468. Validate IP Address 解题报告(Python)

    [LeetCode]468. Validate IP Address 解题报告(Python) 标签(空格分隔): LeetCode 作者: 负雪明烛 id: fuxuemingzhu 个人博客: h ...

  2. 468 Validate IP Address 验证IP地址

    详见:https://leetcode.com/problems/validate-ip-address/description/ Java实现: class Solution { public St ...

  3. Java实现 LeetCode 468 验证IP地址

    468. 验证IP地址 编写一个函数来验证输入的字符串是否是有效的 IPv4 或 IPv6 地址. IPv4 地址由十进制数和点来表示,每个地址包含4个十进制数,其范围为 0 - 255, 用(&qu ...

  4. [LeetCode] Validate IP Address 验证IP地址

    In this problem, your job to write a function to check whether a input string is a valid IPv4 addres ...

  5. Leetcode: Validate IP Address

    In this problem, your job to write a function to check whether a input string is a valid IPv4 addres ...

  6. [Swift]LeetCode468. 验证IP地址 | Validate IP Address

    Write a function to check whether an input string is a valid IPv4 address or IPv6 address or neither ...

  7. Java Regex match IP address

    Reference: [1] https://www.mkyong.com/regular-expressions/how-to-validate-ip-address-with-regular-ex ...

  8. LeetCode 1108. Defanging an IP Address (IP 地址无效化)

    题目标签:String 题目给了我们一组 ip address,让我们把 . 变成 [.],这题可以用replace,但是这样做的话,好像没意义了.所以还是走一下array,具体看code. Java ...

  9. LeetCode:Restore IP Address

    93. Restore IP Addresses Given a string containing only digits, restore it by returning all possible ...

随机推荐

  1. UIkit框架之uiUIapplication

    1.继承链:uiresponder:NSObject 2.使用 sharedApplication方法来存取对象 3.这个类可以遵守协议是UIApplicationDelegate 4.获取app的实 ...

  2. OJ-Triangle

    这是Leet Code OJ上面的一道题,关于求从上到下的最小路径. 这是原题链接:https://leetcode.com/problems/triangle/ Given a triangle, ...

  3. .net 下判断中英文字符串长度

    System.Text.Encoding.Default.GetBytes(str).Length

  4. Discuz对不起,您安装的不是正版应用的解决办法

    方法三(2014年新增最简单方法.) .打开/source /function/function_cloudaddons.php这个文件,2.搜索:cloudaddons_validator,3.一般 ...

  5. CentOS7 监控进程网络流量工具安装

    服务器在做测试的时候,需要监控网络流量,用来了解在不同人数的时候服务器的网络使用量. 我们使用服务器环境是centos7,centos下通常使用iftop,或者nethogs来进行网络流量监控.这2个 ...

  6. 修改安卓串口蓝牙app问题记录

    * 在网上下载的安卓的蓝牙串口app都是基于eclipse的,但往as里边导入时都存在问题. 迫不得已最后我使用的办法还是在as下面新建工程,然后把相关文件导入.不过还是遇到了其他的问题. * 某个蓝 ...

  7. 【转】Qt下使用glut库

    ps:这个说的很明白,尤其是win10环境下用mingw环境时编程时碰到的问题, 1.加 windows.h 2.在.pro 添加libs     博文地址:Qt下使用glut库   本人使用的环境 ...

  8. 如何关闭emacs开启时自己打开的欢迎界面

    EMACS在开启后,会自动打开一个欢迎界面.如果要去除他,可以在用emacs或其实编辑工具编辑~/.emacs文件. 在最下面一行加上,保存退出即可. (setq inhibit-startup-me ...

  9. tcp之快速重传与恢复

    本文为原创,转载请注明:http://www.cnblogs.com/gistao/ Background 写网络程序的都知道,tcp的窗口控制分为慢启动阶段和拥塞避免阶段,重传机制有快速重传/恢复和 ...

  10. 通过sougou输入法,解决卡在Setup Wizard(小绿人)界面

    本人使用海信EG900手机(安卓2.3.5,已root),为了使用google的服务,先后手动复制和CWM recovery刷入google服务包(gapps-gb-20110828-signed.z ...