Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::experimental::erase_if(std::basic_string)

      From cppreference.com
      <cpp‎ |experimental

      [edit template]
       
       
       
       
      Merged into ISO C++ The functionality described on this page was merged into the mainline ISO C++ standardas of 11/2018, seestd::erase_if(since C++20)
      Defined in header<experimental/string>
      template<class CharT,class Traits,class Alloc,class Pred>
      void erase_if(std::basic_string<CharT, Traits, Alloc>& c, Pred pred);
      (library fundamentals TS v2)

      Erases all elements that satisfy the predicatepred from the container. Equivalent toc.erase(std::remove_if(c.begin(), c.end(), pred), c.end());.

      Contents

      [edit]Parameters

      c - container from which to erase
      pred - predicate that determines which elements should be erased

      [edit]Complexity

      Linear.

      [edit]Example

      Run this code
      #include <experimental/string>#include <iomanip>#include <iostream> int main(){std::string data{"1337!p_C00L_<a-_HACKER_!@s_(!s#@_w^o%r*d#42"};std::cout<<"Original string: "<<std::quoted(data)<<'\n';auto crack=[](auto O){return'`'^('`'& O);};    std::experimental::erase_if(data, crack);std::cout<<"After erase_if:  "<<std::quoted(data)<<'\n';}

      Output:

      Original string: "1337!p_C00L_<a-_HACKER_!@s_{!s#@_w^o%r*d#42"After erase_if:  "password"

      [edit]See also

      removes elements satisfying specific criteria
      (function template)[edit]
      (library fundamentals 2 TS)
      erases all elements equal to a specific value from astd::basic_string
      (function template)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/experimental/basic_string/erase_if&oldid=98554"

      [8]ページ先頭

      ©2009-2025 Movatter.jp