面試知識點總結 字串操作

2021-08-21 21:52:18 字數 1732 閱讀 3354

本節將對c++中字串的操作進行整理。

字串長度

int len = str.length();

len = str.size()

字串比較

可以直接進行比較

也可以:

str1.compare(str2);

str1.compare(pos1,len1,str2,pos2,len2);//值為負,0和正

附加

str1 += str2;
字串提取

str2 = str1.substr();

str2 = str1.substr(pos1);

str2 = str1.substr(pos1,len1);

string a = s.substr(0,4);//獲得字串s中,從第0位開始的長度為4的字串

字串搜尋

where = str1.find(str2);

where = str1.find(str2.pos1); //pos1是從str1第pos1位開始搜尋

where = str1.rfind(str2);

插入字串

str1.insert(pos1,str2);

str1.insert(pos1,str2,pos2,len2);

str1.insert(pos1,numchar,char); //numchar是插入次數,char是要插入的字元

替換字串

str1.replace(pos1,str2);

str1.replace(pos1,str2,pos2,len2);

刪除字串

str.erase(pos,len);

str.clear();

交換字串

swap(str1,str2);
字串轉換成數字

推薦使用c++的stringstream,因為其操作簡單。

#include

#include

int str2num(string s)

數字轉換成字串

#include

#include

string num2str(int num)

字串分隔

使用substr和find函式可以完成這一操作。

vector

splitwithstl(const

string &str, const

string &pattern)

//方便擷取最後一段資料

string strs = str + pattern;

size_t pos = strs.find(pattern); //返回第乙個出現pattern的位置

size_t size = strs.size();

while(pos != string::npos)

return resvec;

}

Python字串知識點總結

a abc b a 1 字串反轉 c a 1 3 字串擷取,下標從0開始,謹記左開右閉 print a,b,c out abc cba bcnum 3.1415926 print f 小數點後取3位,注意是四捨五入的 out 3.1416str1 this is string example wow...

字串知識點checklist

知識點checklist 1 strlen 函式的返回值是什麼型別的?2 字串strlen 的值,是否和他佔據的記憶體空間相同?3 你是否知道strcpy 函式存在的潛在風險?如何避免?4 如果乙個字串沒有字串結束符,而呼叫str 開頭的庫函式,會發生什麼?5 strcpy strcat strcm...

字串小知識點

1 字串操作 strcpy p,p1 複製字串 strncpy p,p1,n 複製指定長度字串 strcat p,p1 附加字串 strncat p,p1,n 附加指定長度字串 strlen p 取字串長度 strcmp p,p1 比較字串 strcasecmp忽略大小寫比較字串 strncmp p...