Регулярное выражение, соответствующее действительным адресам IPv6

Следующие параметры будут regexes проверять адреса IPv4, IPv6 regexp (полный и сжатый) и IPv6v4 network (полный и сжатый):

'/^(?>(?>([a-f0-9]{1,4})(?>:(?1)){7}|(?!(?:.*[a-f0-9](?>:|$)){8,})((?1)(?>:(?1)){0,6})?::(?2)?)|(?>(?>(?1)(?>:(?1)){5}:|(?!(?:.*[a-f0-9]:){6,})(?3)?::(?>((?1)(?>:(?1)){0,4}):)?)?(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(?>\.(?4)){3}))$/iD'

regex

networking

ipv6

2022-11-05T07:05:59+00:00