diff --git a/Lib/urllib.py b/Lib/urllib.py
index 45f3e99..a8228eb 100644
--- a/Lib/urllib.py
+++ b/Lib/urllib.py
@@ -598,18 +598,17 @@
 
 # Split host and port, returning numeric port.
 # Return given default port if no ':' found; defaults to -1.
-# Return numerical port if digits are found after ':'.
-# Return None if ':' but no digits.
-_nportprog = regex.compile('^\(.*\):\([^0-9]*\([0-9]*\).*\)$')
+# Return numerical port if a valid number are found after ':'.
+# Return None if ':' but not a valid number.
+_nportprog = regex.compile('^\(.*\):\(.*\)$')
 def splitnport(host, defport=-1):
 	if _nportprog.match(host) >= 0:
-	    host, port = _nportprog.group(1, 3)
-	    nport = None
-	    if port:
-		try:
-		    nport = string.atoi(port)
-		except string.atoi_error:
-		    pass
+	    host, port = _nportprog.group(1, 2)
+	    try:
+		if not port: raise string.atoi_error, "no digits"
+		nport = string.atoi(port)
+	    except string.atoi_error:
+		nport = None
 	    return host, nport
 	return host, defport
 
