@@ -12,21 +12,21 @@ const errors = require('internal/errors');
1212
1313// IPv4 Segment 
1414const  v4Seg  =  '(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])' ; 
15- const  v4Str  =  `(${ v4Seg } ${ v4Seg }  ; 
15+ const  v4Str  =  `(?: ${ v4Seg } ${ v4Seg }  ; 
1616const  IPv4Reg  =  new  RegExp ( `^${ v4Str }  ) ; 
1717
1818// IPv6 Segment 
1919const  v6Seg  =  '(?:[0-9a-fA-F]{1,4})' ; 
20- const  IPv6Reg  =  new  RegExp ( '^('  + 
20+ const  IPv6Reg  =  new  RegExp ( '^(?: '  + 
2121  `(?:${ v6Seg } ${ v6Seg }   + 
2222  `(?:${ v6Seg } ${ v4Str } ${ v6Seg }   + 
23-   `(?:${ v6Seg } ${ v4Str } ${ v6Seg }   + 
24-   `(?:${ v6Seg } : ${ v6Seg } ${ v4Str } ${ v6Seg }   + 
25-   `(?:${ v6Seg } : ${ v6Seg } ${ v4Str } ${ v6Seg }   + 
26-   `(?:${ v6Seg } : ${ v6Seg } ${ v4Str } ${ v6Seg }   + 
27-   `(?:${ v6Seg } : ${ v6Seg } ${ v4Str } ${ v6Seg }   + 
28-   `(?::((?::${ v6Seg } ${ v4Str } ${ v6Seg }   + 
29- ')(%[0-9a-zA-Z-.:]{1,})?$' ) ; 
23+   `(?:${ v6Seg } ${ v4Str } ?: :${ v6Seg }   + 
24+   `(?:${ v6Seg } ?:: ${ v6Seg } ${ v4Str } ?: :${ v6Seg }   + 
25+   `(?:${ v6Seg } ?:: ${ v6Seg } ${ v4Str } ?: :${ v6Seg }   + 
26+   `(?:${ v6Seg } ?:: ${ v6Seg } ${ v4Str } ?: :${ v6Seg }   + 
27+   `(?:${ v6Seg } ?:: ${ v6Seg } ${ v4Str } ?: :${ v6Seg }   + 
28+   `(?::(?: (?::${ v6Seg } ${ v4Str } ${ v6Seg }   + 
29+ ')(?: %[0-9a-zA-Z-.:]{1,})?$' ) ; 
3030
3131function  isIPv4 ( s )  { 
3232  // TODO(aduh95): Replace RegExpPrototypeTest with RegExpPrototypeExec when it 
0 commit comments