std::experimental::erase (std::basic_string) - cppreference.com (original) (raw)

Merged into ISO C++ The functionality described on this page was merged into the mainline ISO C++ standard as of 11/2018, see std::erase (since C++20)

| | | | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ---------------------------- | | template< class CharT, class Traits, class A, class U > void erase( std::basic_string<CharT, Traits, A>& c, const U& value ); | | (library fundamentals TS v2) |

Erases all elements that compare equal to value from the container. Equivalent to c.erase(std::remove(c.begin(), c.end(), value), c.end());.

[edit] Parameters

c - container from which to erase
value - value to be removed

[edit] Complexity

Linear.

[edit] Example

#include <experimental/string> #include   int main() { std::string data{"$$P$A$S$S$$W$O$R$$D$"}; std::cout << data << '\n'; auto crack{'$'}; std::experimental::erase(data, crack); std::cout << data << '\n'; }

Output: P$A$S$S$$W$O$R$$D$ PASSWORD

[edit] See also