:relfileprefix: ../../../
[#boost-urls-params_ref-replace]

== xref:boost.adoc[pass:[boost]]::xref:boost/urls.adoc[pass:[urls]]::xref:boost/urls/params_ref.adoc[pass:[params_ref]]::replace

  


Replace elements



=== Synopsis
  

[source,cpp,subs="verbatim,macros,-callouts"]
----
xref:boost/urls/params_base/iterator.adoc[iterator]
xref:boost/urls/params_ref/replace-0d.adoc[pass:[replace]](
    xref:boost/urls/params_base/iterator.adoc[iterator] pos,
    xref:boost/urls/param_view.adoc[param_view] const& p);
----

[source,cpp,subs="verbatim,macros,-callouts"]
----
xref:boost/urls/params_base/iterator.adoc[iterator]
xref:boost/urls/params_ref/replace-0b.adoc[pass:[replace]](
    xref:boost/urls/params_base/iterator.adoc[iterator] from,
    xref:boost/urls/params_base/iterator.adoc[iterator] to,
    std::initializer_list<xref:boost/urls/param_view.adoc[param_view]> init);
----

[source,cpp,subs="verbatim,macros,-callouts"]
----
template<class FwdIt>
xref:boost/urls/params_base/iterator.adoc[iterator]
xref:boost/urls/params_ref/replace-01.adoc[pass:[replace]](
    xref:boost/urls/params_base/iterator.adoc[iterator] from,
    xref:boost/urls/params_base/iterator.adoc[iterator] to,
    FwdIt first,
    FwdIt last);
----
  
=== Description


This function replaces the contents
of the element at `pos` with the
specified param.



All iterators that are equal to
`pos` or come after are invalidated.
[,cpp]
----
url u( "?first=John&last=Doe" );

u.params().replace( u.params().begin(), { "title", "Mr" });

assert( u.encoded_query() == "title=Mr&last=Doe" );
----

=== Linear in `this-&gt;url().encoded_query().size()`.

=== Strong guarantee.

Calls to allocate may throw.



=== Return Value


An iterator to the element.



=== Parameters

|===
| Name | Description 

| *pos*
| 
An iterator to the element.

| *p*
| 
The param to assign.

| *from,to*
| 
The range of elements
to replace.

| *init*
| 
The list of params to assign.

| *first,*
| 
last The range of params
to assign.

|===




