標準C 字串string任意分割

2021-05-23 06:01:03 字數 1007 閱讀 9623

最近在做乙個專案,要求**跨平台,因此要使用標準c++。其中要用到字串分割,在網上找了一下,對其進行稍作修改可以實現字串任意分割,如下程式,並有使用舉例。

#include

#include

#include

#include

using namespace std;

typedef basic_string::size_type s_t; 

static const s_t npos = -1; 

trim指示是否保留空串,預設為保留。tok可以為任意多個字元

vectortokenize(const string& src, string tok,           

bool trim=false, string null_subst="") 

string endstr = src.substr(pre_index); 

if( trim==false ) v.push_back( endstr.empty()?null_subst:endstr ); 

else if( !endstr.empty() )

v.push_back(endstr); 

return v; 

} //delimit為乙個字元,嚴格分割

vectorsplit(const string& src, string delimit, string null_subst="") 

string last_one = src.substr(last_search_position); 

v.push_back( last_one.empty()? null_subst:last_one ); 

return v; 

}  

測試如下:

int main(int argc, char* argv)

}  catch (char *s)

return 0;

}

字串系列二 C 標準庫string型別

c 語言提供了專門處理長度可變的字串的標準庫string型別,標準庫負責管理與儲存字元相關的記憶體並提供字串相關操作,標頭檔案為 string 1 string型別的定義和初始化 string標準庫支援以下幾個建構函式 建構函式 功能string s 預設建構函式,s初始化為空串 string s2...

C 字串物件(string)

這次去北京理工參加複試,當時的上機題目的第2題是一道字串有關的題目 大致的題目是這樣的,在乙個已有序列中有eric,machel,peter,要求插入 jhon,以後按照字母順序顯示排好,並且可以多次輸入,如果有相同的提示重新輸入。當時的我對string類並不了解,所以用的是鍊錶和動態生成字串的方式...

C 字串處理string

之所以拋棄char 的字串而選用c 標準程式庫中的string類,是因 為他和前者比較起來,不必擔心記憶體是否足夠 字串長度等等,而且作為乙個類出現,他整合的操作函式足以完成我們大多數情況下 甚至是100 的需要。我們可以用 進行賦值操作,進行比較,做串聯。我們盡可以把它看成是c 的基本資料型別。首...