Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for a snapshot of the master branch, built from commit 7789ef3d8d.
PrevUpHomeNext
params_encoded_base::find (1 of 2 overloads)

Find a matching key.

Synopsis
iterator
find(
    pct_string_view key,
    ignore_case_param ic = {}) const;
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 first param and proceeds forward until either the key is found or the end of the range is reached, in which case end() is returned.

Example
assert( url_view( "?first=John&last=Doe" ).encoded_params().find( "First" , ignore_case )->value == "John" );
Effects
return this->find( this->begin(), key, ic );
Complexity

Linear in this->buffer().size().

Exception Safety

Exceptions thrown on invalid input.

Exceptions

Type

Thrown On

system_error

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 ignore_case is passed here, the comparison is case-insensitive.


PrevUpHomeNext