:relfileprefix: ../../../ [#boost-urls-params_encoded_base-find_last] == xref:boost.adoc[pass:[boost]]::xref:boost/urls.adoc[pass:[urls]]::xref:boost/urls/params_encoded_base.adoc[pass:[params_encoded_base]]::find_last Find a matching key === Synopsis [source,cpp,subs="verbatim,macros,-callouts"] ---- xref:boost/urls/params_encoded_base/iterator.adoc[iterator] xref:boost/urls/params_encoded_base/find_last-05.adoc[pass:[find_last]]( xref:boost/urls/pct_string_view.adoc[pct_string_view] key, xref:boost/urls/ignore_case_param.adoc[ignore_case_param] ic = = {}) const noexcept; ---- [source,cpp,subs="verbatim,macros,-callouts"] ---- xref:boost/urls/params_encoded_base/iterator.adoc[iterator] xref:boost/urls/params_encoded_base/find_last-0d.adoc[pass:[find_last]]( xref:boost/urls/params_encoded_base/iterator.adoc[iterator] before, xref:boost/urls/pct_string_view.adoc[pct_string_view] key, xref:boost/urls/ignore_case_param.adoc[ignore_case_param] ic = = {}) const noexcept; ---- === Description This function examines the parameters in the container to find a match for the specified key, which may contain percent escapes. The comparison is performed as if all escaped characters were decoded first. The search starts from the last param and proceeds backwards until either the key is found or the beginning of the range is reached, in which case `end()` is returned. [,cpp] ---- assert( url_view( "?first=John&last=Doe" ).encoded_params().find_last( "last" )->value == "Doe" ); ---- === Linear in `this->buffer().size()`. === Exceptions thrown on invalid input. === Exceptions |=== | Name | Thrown on | ``key`` | contains an invalid percent-encoding. |=== === Return Value an iterator to the param === Parameters |=== | Name | Description | *key* | The key to match. By default, a case-sensitive comparison is used. | *ic* | An optional parameter. If the value xref:boost/urls/ignore_case.adoc[ignore_case] is passed here, the comparison is case-insensitive. | *before* | One past the position to begin the search from. This can be `end()`. |===