[ Web Proxy ]
URL:
Viewing: http://ja.cppreference.com/cpp/string/basic_string/replace [Back]  [Original]

std::basic_string<CharT,Traits,Allocator>::replace - cppreference.com
cppreference.com

std::basic_string<CharT,Traits,Allocator>::replace

: cppreference.com
 
C++
(C++20)
(C++20)
(C++17)
(C++11)
(C++11)
(C++11)
 
 
std::basic_string
 
<tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody>
(1)
basic_string& replace( size_type pos, size_type count, const basic_string& str );
(C++20)
constexpr basic_string& replace( size_type pos, size_type count, const basic_string& str );
(C++20)
(1)
basic_string& replace( const_iterator first, const_iterator last, const basic_string& str );
(C++20)
constexpr basic_string& replace( const_iterator first, const_iterator last, const basic_string& str );
(C++20)
(2)
basic_string& replace( size_type pos, size_type count, const basic_string& str, size_type pos2, size_type count2 );
(C++14)
basic_string& replace( size_type pos, size_type count, const basic_string& str, size_type pos2, size_type count2 = npos );
(C++14)
(C++20)
constexpr basic_string& replace( size_type pos, size_type count, const basic_string& str, size_type pos2, size_type count2 = npos );
(C++20)
(3)
template< class InputIt > basic_string& replace( const_iterator first, const_iterator last, InputIt first2, InputIt last2 );
(C++20)
template< class InputIt > constexpr basic_string& replace( const_iterator first, const_iterator last, InputIt first2, InputIt last2 );
(C++20)
(4)
basic_string& replace( size_type pos, size_type count, const CharT* cstr, size_type count2 );
(C++20)
constexpr basic_string& replace( size_type pos, size_type count, const CharT* cstr, size_type count2 );
(C++20)
(4)
basic_string& replace( const_iterator first, const_iterator last, const CharT* cstr, size_type count2 );
(C++20)
constexpr basic_string& replace( const_iterator first, const_iterator last, const CharT* cstr, size_type count2 );
(C++20)
(5)
basic_string& replace( size_type pos, size_type count, const CharT* cstr );
(C++20)
constexpr basic_string& replace( size_type pos, size_type count, const CharT* cstr );
(C++20)
(5)
basic_string& replace( const_iterator first, const_iterator last, const CharT* cstr );
(C++20)
constexpr basic_string& replace( const_iterator first, const_iterator last, const CharT* cstr );
(C++20)
(6)
basic_string& replace( size_type pos, size_type count, size_type count2, CharT ch );
(C++20)
constexpr basic_string& replace( size_type pos, size_type count, size_type count2, CharT ch );
(C++20)
(6)
basic_string& replace( const_iterator first, const_iterator last, size_type count2, CharT ch );
(C++20)
constexpr basic_string& replace( const_iterator first, const_iterator last, size_type count2, CharT ch );
(C++20)
(7)
basic_string& replace( const_iterator first, const_iterator last, std::initializer_list<CharT> ilist );
(C++11)
(C++20)
constexpr basic_string& replace( const_iterator first, const_iterator last, std::initializer_list<CharT> ilist );
(C++20)
(8)
template < class T > basic_string& replace( size_type pos, size_type count, const T& t );
(C++17)
(C++20)
template < class T > constexpr basic_string& replace( size_type pos, size_type count, const T& t );
(C++20)
(8)
template < class T > basic_string& replace( const_iterator first, const_iterator last, const T& t );
(C++17)
(C++20)
template < class T > constexpr basic_string& replace( const_iterator first, const_iterator last, const T& t );
(C++20)
(9)
template < class T > basic_string& replace( size_type pos, size_type count, const T& t, size_type pos2, size_type count2 = npos );
(C++17)
(C++20)
template < class T > constexpr basic_string& replace( size_type pos, size_type count, const T& t, size_type pos2, size_type count2 = npos );
(C++20)

[pos, pos + count) [first, last)

1) str
2) str [pos2, pos2 + count2) count2==npos str.size() [pos2, str.size())
3) [first2, last2)

InputIt (6)

(C++11)

InputIt LegacyInputIterator

(C++11)
4) [cstr, cstr + count2)
5) [cstr, cstr + Traits::length(cstr))
6) ch count2
7) ilist
8) std::basic_string_view<CharT, Traits> sv = t; t sv std::is_convertible_v<const T&, std::basic_string_view<CharT, Traits>> true std::is_convertible_v<const T&, const CharT*> false
9) std::basic_string_view<CharT, Traits> sv = t; t sv [pos2, pos2 + count2) count2==npos sv.size() [pos2, sv.size()) std::is_convertible_v<const T&, std::basic_string_view<CharT, Traits>> true std::is_convertible_v<const T&, const CharT*> false .

pos -
count -
first, last -
str -
pos2 -
count2 -
cstr -
ch -
first2, last2 -
ilist -
t - (std::basic_string_view )

*this

pos > length() pos2 > str.length() std::out_of_range

(max_size()) std::length_error

() (C++11)

C++

DR
LWG 2946 C++17 string_view overload causes ambiguity in some cases avoided by making it a template

#include <iostream>
#include <string>

int main()
{
    std::string str("The quick brown fox jumps over the lazy dog.");
    
    str.replace(10, 5, "red"); // (5)
    
    str.replace(str.begin(), str.begin() + 3, 1, 'A'); // (6)
    
    std::cout << str << '\n';
}

:

A quick red fox jumps over the lazy dog.

Web Proxy Viewer  |  New URL  |  Original Page