Posted to tcl by mjanssen at Wed Jul 27 20:33:34 GMT 2011view raw
- %proc ip6parts {address} {
- # returns parts as a list or the empty list if address is not ipv6
- set parts [split $address :]
- if {[llength $parts] != 8} {return {}}
- foreach part $parts {
- if {[regexp {^[[:xdigit:]]{1,4}$} $part]==0} {return {}}
- }
- return $parts
- }
- % ip6parts 2607:f098:10ff:0:1:45:ee:1
- 2607 f098 10ff 0 1 45 ee 1
- % ip6parts 2607:f098:10ff:0:1:45:ee:2
- 2607 f098 10ff 0 1 45 ee 2
- % ip6parts 2607:f098:10ff:0:1:45:ee:x
- %