| Home | Libraries | People | FAQ | More

###### params_encoded_ref::find (1 of 2 overloads)

(Inherited from `params_encoded_base`)

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.