30
正規表現を使用したIPv4アドレスの検証
私はIPv4検証のための効率的な正規表現を取得しようとしていますが、あまり運がありません。ある時点で私はそれを持っていたように見えました(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?(\.|$)){4}が、それはいくつかの奇妙な結果を生み出します: $ grep --version grep (GNU grep) 2.7 $ grep -E '\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?(\.|$)){4}\b' <<< 192.168.1.1 192.168.1.1 $ grep -E '\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?(\.|$)){4}\b' <<< 192.168.1.255 192.168.1.255 $ grep -E '\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?(\.|$)){4}\b' <<< 192.168.255.255 $ grep -E '\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?(\.|$)){4}\b' <<< 192.168.1.2555 192.168.1.2555 私はこれがすでに尋ねられて答えられているかどうかを確認するために検索を行いましたが、他の答えは単に1〜3の数字の4つのグループを決定する方法を示しているように見えます。