mehrere zeichenketten in string suchen



  • Hallo alle zusammen,
    ich habe ein Problem. Ich möchte eine Zahl in einem String suchen. Das geht, nur wenn es eine Zahl mehrmals im String vorkommt, dann gibt er nur die erste Stelle aus.

    [code]
    string text="1;11;2;2;2;22;123;", text2, auslagerung;
    int pos=0;

    cout<<"Unser String lautet: "<<text<<endl<<endl;

    pos = text.find("2"); //Suchen von Zeichen
    cout<<pos<<endl;

    Kenn vielleicht einer von euch vielleicht einen besseren Befehl oder wisst ihr wie ich das Problem lösen kann????



  • Hallo

    string text="1;11;2;2;2;22;123;", text2, auslagerung;
    cout<<"Unser String lautet: "<<text<<endl<<endl;
    
    int pos = 0;
    while ((pos = text.find("2", pos)) != string::npos)
    {
      cout<<pos<<endl; 
      ++pos;
    }
    

    bis bald
    akari



  • std::set<std::size_t> find_all (std::string const& str, std::string const& search)
    {
        std::set<std::size_t> res;
        std::size_t pos = str.find (search);
        while (pos != std::string::npos)
        {
            res.push (pos)
            pos = str.find (search, pos + search.size())
        }
        return res;
    }
    

Anmelden zum Antworten