Come posso ottenere una parte di una stringa in C++? Voglio sapere quali sono gli elementi da 0 a i.Come posso ottenere una parte di una stringa in C++?
8
A
risposta
15
Si desidera utilizzare std::string::substr
. Ecco un esempio, spudoratamente copiato da http://www.cplusplus.com/reference/string/string/substr/
// string::substr
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str="We think in generalities, but we live in details.";
// quoting Alfred N. Whitehead
string str2, str3;
size_t pos;
str2 = str.substr (12,12); // "generalities"
pos = str.find("live"); // position of "live" in str
str3 = str.substr (pos); // get from "live" to the end
cout << str2 << ' ' << str3 << endl;
return 0;
}
2
Si utilizza substr
, documentato here:
#include <iostream>
#include <string>
using namespace std;
int main(void) {
string a;
cout << "Enter string (5 characters or more): ";
cin >> a;
if (a.size() < 5)
cout << "Too short" << endl;
else
cout << "First 5 chars are [" << a.substr(0,5) << "]" << endl;
return 0;
}
È inoltre possibile quindi trattarla come una stringa in stile C (non modificabile) utilizzando c_str
, documentato here.
1
se u significa stringa è un array di caratteri,
char str[20];
int i;
strcpy(str,"Your String");
//Now lets get the substr
cin>>i;
// do some out-of-bounds validation here if u want..
str[i+1]=0;
cout<<str;
se u significa la funzione substr std::string
uso .. come volontà suggerito
1
Supponendo che si sta utilizzando il C++ std::string
classe
si può fare:
std::string::size_type start = 0;
std::string::size_type length = 1; //don't use int. Use size type for portability!
std::string myStr = "hello";
std::string sub = myStr.substr(start,length);
std::cout << sub; //should print h
0
uso:
std::string sub_of_s(s.begin(), s.begin()+i);
che creano una stringa sub_of_s
che è il primo i-th
dell'elemento in s
.
Problemi correlati
- 1. Stampa parte di una stringa in C
- 2. SSIS Come ottenere una parte di una stringa tramite separatore
- 3. Come rimuovere una parte di una stringa?
- 4. Come posso ottenere i bit da una stringa in C#?
- 5. Come rimuovere una parte di una stringa?
- 6. Come posso tagliare una stringa in C?
- 7. Come posso rilevare "_" in una stringa C++?
- 8. tagliare parte di una stringa
- 9. Rompere una stringa a parte in una sequenza di parole
- 10. ottenere una parte millisecondo di tempo
- 11. Estrarre parte di una stringa in una variabile in bash
- 12. in javascript, come posso ottenere l'ultimo carattere di una stringa
- 13. Come posso ottenere l'ultima cartella da una stringa di percorso?
- 14. Come posso analizzare una stringa in formato C in Python?
- 15. AGGIORNA e SOSTITUISCI parte di una stringa
- 16. Come posso ottenere l'indirizzo di una struttura in C?
- 17. Posso "moltiplicare" una stringa (in C#)?
- 18. Come ottenere una stringa invece di una matrice in PowerShell?
- 19. Come posso creare una stringa di spazi vuoti in C++?
- 20. Ottenere una stringa dopo una specifica stringa
- 21. Come ottenere alcuni valori da una stringa JSON in C#?
- 22. È necessario ottenere una stringa dopo una "parola" in una stringa in C#
- 23. Come espandere una stringa all'interno di una stringa in python?
- 24. script di shell: Come tagliare parte di una stringa
- 25. Come ottenere l'ultima lettera di una stringa
- 26. Bash: estrarre parte di una stringa
- 27. Come ottenere una stringa formattata in OCaml?
- 28. come sostituire parte di una stringa in python?
- 29. Come posso scaricare solo una parte di una pagina?
- 30. Come ottenere solo lettere da una stringa in C#?
Vedere il riferimento: http://www.sgi.com/tech/stl/basic_string.html –