Мне нужно регулярное выражение для ipv6 адресов с помощью следующей маски: 2620: 0000: 2820 ::/48найти регулярное выражение для ipv6 диапазона адресов
То есть я хочу в регулярное выражение, которое может представлять следующий круг адреса:
2620:0000:2820:0000:0000:0000:0000:0000
К
2620:0000:2820:ffff:ffff:ffff:ffff:ffff
до сих пор я мог придумать с этим:
"^(2620:0000:2820:){1}:[0-9a-fA-F]{4}:[0-9a-fA-F]{4}:[0-9a-fA-F]{4}:[0-9a-fA-F]{4}:[0-9a-fA-F]{4}$"
Какое правильное выражение?
Что случилось с тем, что вы получили? – sln
Просто измените '{4}' на '{1,4}' – sln
«Если вы научились использовать молот, тогда каждая проблема выглядит как гвоздь». Вы не должны этого делать - вы всегда будете что-то пропустить. Например, вы пропустите это: '2620: 0000: 2820: 0000 :: 0000: 0000' и это:' 2620: 0000: 2820: ffff :: 0000' и кто знает, что еще. Правильное решение состоит в том, чтобы преобразовать IPv6 во внутреннее представление и работать с битами – mvp