PyukiWiki CVS Commit
pyuki****@lists*****
2012年 5月 30日 (水) 10:03:48 JST
Index: PyukiWiki-Devel-UTF8/build/regipv4.regex diff -u PyukiWiki-Devel-UTF8/build/regipv4.regex:1.84 PyukiWiki-Devel-UTF8/build/regipv4.regex:1.85 --- PyukiWiki-Devel-UTF8/build/regipv4.regex:1.84 Tue May 1 15:49:58 2012 +++ PyukiWiki-Devel-UTF8/build/regipv4.regex Wed May 30 10:03:48 2012 @@ -1,9 +1,13 @@ ################################################################## -# $Id: regipv4.regex,v 1.84 2012/05/01 06:49:58 papu Exp $ +# $Id: regipv4.regex,v 1.85 2012/05/30 01:03:48 papu Exp $ ################################################################## # IPV4 regex ################################################################## $digit = q{[0-9]}; -$IPv4address = qq{$digit+\\.$digit+\\.$digit+\\.$digit+}; +#$IPv4address = qq{$digit+\\.$digit+\\.$digit+\\.$digit+}; +#print "^$IPv4address"; -print "^$IPv4address"; +# from Regexp::Ipv6 +my $IPv4 = "((25[0-5]|2[0-4][0-9]|[0-1]?[0-9]{1,2})[.](25[0-5]|2[0-4][0-9]|[0-1]?[0-9]{1,2})[.](25[0-5]|2[0-4][0-9]|[0-1]?[0-9]{1,2})[.](25[0-5]|2[0-4][0-9]|[0-1]?[0-9]{1,2}))"; + +print $IPv4; Index: PyukiWiki-Devel-UTF8/build/regipv6.regex diff -u PyukiWiki-Devel-UTF8/build/regipv6.regex:1.85 PyukiWiki-Devel-UTF8/build/regipv6.regex:1.86 --- PyukiWiki-Devel-UTF8/build/regipv6.regex:1.85 Tue May 1 15:49:58 2012 +++ PyukiWiki-Devel-UTF8/build/regipv6.regex Wed May 30 10:03:48 2012 @@ -1,11 +1,12 @@ ################################################################## -# $Id: regipv6.regex,v 1.85 2012/05/01 06:49:58 papu Exp $ +# $Id: regipv6.regex,v 1.86 2012/05/30 01:03:48 papu Exp $ ################################################################## # IPV6 regex ################################################################## # http://d.hatena.ne.jp/taichitaichi/20110112/1294819517 # http://ahhuhahhuh.blogspot.com/2010/02/ipv6.html +if(0) { $regipv6=<<EOM; ( ( @@ -70,3 +71,26 @@ $regipv6=~s/[\r\n\t\s]//g; print "^$regipv6"; + +} + +# from Regexp::IPv6 + +my $IPv4 = "((25[0-5]|2[0-4][0-9]|[0-1]?[0-9]{1,2})[.](25[0-5]|2[0-4][0-9]|[0-1]?[0-9]{1,2})[.](25[0-5]|2[0-4][0-9]|[0-1]?[0-9]{1,2})[.](25[0-5]|2[0-4][0-9]|[0-1]?[0-9]{1,2}))"; +my $G = "[0-9a-fA-F]{1,4}"; + +my @tail = ( ":", + "(:($G)?|$IPv4)", + ":($IPv4|$G(:$G)?|)", + "(:$IPv4|:$G(:$IPv4|(:$G){0,2})|:)", + "((:$G){0,2}(:$IPv4|(:$G){1,2})|:)", + "((:$G){0,3}(:$IPv4|(:$G){1,2})|:)", + "((:$G){0,4}(:$IPv4|(:$G){1,2})|:)" ); + +our $IPv6_re = $G; +$IPv6_re = "$G:($IPv6_re|$_)" for @tail; +$IPv6_re = qq/:(:$G){0,5}((:$G){1,2}|:$IPv4)|$IPv6_re/; +$IPv6_re =~ s/\(/(?:/g; +$IPv6_re = qr/$IPv6_re/; + +print "$IPv6_re";