System.Net.IPAddressのコンストラクタに渡す文字列をチェックしたかったのだが、IPv4表記ならば楽にバイト列化できるけど、IPv6の場合短縮表記やら、インタフェースIDやら、IPv4埋め込みやらで、やたらと手間がかかる・・・と思っていた。
%や:や.で分割して、0埋めが必要ならどれだけか調べて置換・・・とか、いろいろやったんだけど、結局のところ、
System.Net.IPAddress.Parse
System.Net.IPAddress.TryParse
この2メソッドが異様に強力ということに。
かなり適当な表記でも、正しければIPAddressに変換してくれる。
コンストラクタ要らずで、超便利。
ただし、インタフェースID部分は数値である必要があるらしい。
コメントしちゃいなよ