[#boost-urls-url_view_base-zone_id] = xref:boost/urls/url_view_base/zone_id.adoc[boost::urls::url_view_base::zone_id] :relfileprefix: ../../../ :mrdocs: Return the IPv6 Zone ID == Synopsis Declared in `<https://www.github.com/boostorg/url/blob/develop/include/boost/url/url_view_base.hpp#L1463[boost/url/url_view_base.hpp]>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<xref:boost/urls/string_token/StringToken.adoc[string_token::StringToken] StringToken = xref:boost/urls/string_token/return_string.adoc[string_token::return_string]> StringToken::result_type zone_id(StringToken&& token = {}); ---- == Description If the host type is xref:boost/urls/host_type.adoc[`host_type::ipv6`], this function returns the Zone ID as a string. Otherwise an empty string is returned. Any percent‐escapes in the string are decoded first. == Example [,cpp] ---- assert( url_view( "http://[fe80::1%25eth0]/" ).zone_id() == "eth0" ); ---- == Complexity Linear in `this‐>encoded_zone_id().size()`. == Exception Safety Calls to allocate may throw. == BNF [,cpp] ---- host = IP-literal / IPv4address / reg-name IP-literal = "[" ( IPv6address / IPv6addrz / IPvFuture ) "]" ZoneID = 1*( unreserved / pct-encoded ) IPv6addrz = IPv6address "%25" ZoneID ---- == Specification * https://datatracker.ietf.org/doc/html/rfc6874[] == Return Value The Zone ID as a string. == Parameters [cols=2] |=== | Name | Description | *token* | A string token customization. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#