最近在做乙個專案,要求**跨平台,因此要使用標準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 的基本資料型別。首...