Cookbook系列之Cpp:字符串與文本-創(chuàng)新互聯(lián)

問題01:如何把含定界符的字符串分割成多個(gè)字符串

創(chuàng)新互聯(lián)建站主營鐵西網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都app開發(fā),鐵西h5小程序設(shè)計(jì)搭建,鐵西網(wǎng)站營銷推廣歡迎鐵西等地區(qū)企業(yè)咨詢

   使用basic_string中的find成員函數(shù)依次找到每個(gè)定界符,然后使用substr函數(shù)把每個(gè)子字符串復(fù)制出來。

  1. #include <iostream>                                                              
  2. #include <string>                                                                
  3. usingnamespace
  4. int
  5. "Name|Addr|Phone"
  6. char'|'
  7. while
  8. return

問題02:如何使用一組定界符把一個(gè)字符串分解成多個(gè)片段

   使用basic_string的find_first_of和find_first_not_of成員函數(shù)來列舉字符串并交替地定位下一個(gè)特征符和非特征符。

  1. #include <iostream>                                                              
  2. #include <string>                                                                
  3. usingnamespace
  4. int
  5. "Name:Addr;Phone"
  6. ":;"
  7. while
  8. return

問題03:如何在字符串中查找字符

   使用basic_string的find成員函數(shù),幾乎所有以單詞"find"開始的函數(shù)。每一個(gè)函數(shù)都有一個(gè)basic_string::size_type參數(shù)pos,它用來讓你能指明查找開始處的索引。函數(shù)返回值為basic_string::size_type,如果查找成功,返回值即為目標(biāo)索引,如果查找失敗,返回值為basic_string::npos。

  1. find(); 

問題04:如何字符串中查找字符串

   你可以使用定義在<algorithm>中的search算法。

問題05:如何比較兩個(gè)字符串是否相同

   你可以使用定義在<algorithm>中的equal算法。

問題06:如何統(tǒng)計(jì)文本文件中不同類型字符的數(shù)目

   使用輸入流讀字符,一次一個(gè),隨著你讀到的字符,增加相應(yīng)的統(tǒng)計(jì)。判斷函數(shù)可以使用<cctype>中定義的字符判斷函數(shù)。

  1. isalpha(); 
  1. #include <iostream>                                                              
  2. #include <map>                                                                   
  3. #include <fstream>                                                               
  4. #include <cctype>                                                                
  5. #include <string>                                                                
  6. usingnamespace
  7. int
  8. "sample.txt"
  9. int
  10. char
  11. while
  12. if
  13. "alpha"
  14. elseif
  15. "digit"
  16. elseif
  17. "punct"
  18. else
  19. "other"
  20. int
  21. for
  22. " : "
  23. return

 問題07:如何使你的文本右對(duì)齊或左對(duì)齊

   使用流和標(biāo)準(zhǔn)流的格式標(biāo)志右和左,他們都是定義在<ios>中ios_base的一部分。ios_base類模板中有很多標(biāo)志可以用來格式化從流讀進(jìn)來的和寫入流的數(shù)字和文本數(shù)據(jù)??刂莆谋緦?duì)齊的是right和left。它們都是ios_base中的靜態(tài)成員,都是fmtflags類型??梢允褂胕os_base::sef來設(shè)置格式標(biāo)志。

  1. out.setf(std::ios_base::right); 

   但是右對(duì)齊如果沒有設(shè)置右邊頁面的空白寬度的話就沒有意義。為了設(shè)置這個(gè)寬度,可以使用ios_base::width。

  1. out.width(w); 

   當(dāng)你用完你設(shè)置的格式標(biāo)志時(shí),你應(yīng)該做的是清理掉它們。否則,這些標(biāo)志將影響以后使用流的用戶。

  1. ios_base::fmtflags flags = 
  2.      out.setf(ios_base::left); // setf returns the flags that were already there
  3.  
  4. // reset to old flags

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

新聞名稱:Cookbook系列之Cpp:字符串與文本-創(chuàng)新互聯(lián)
本文來源:http://muchs.cn/article18/cdopdp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司、網(wǎng)站維護(hù)、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站導(dǎo)航服務(wù)器托管、商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作