1. 程式人生 > >boost使用split分割字串

boost使用split分割字串

工程中使用boost庫:(設定vs2010環境)
在Library files加上 D:\boost\boost_1_46_0\bin\vc10\lib
在Include files加上 D:\boost\boost_1_46_0

使用舉例:

// boostTest.cpp : 定義控制檯應用程式的入口點。
#include "stdafx.h"

#include <iostream>   
#include <boost/format.hpp>   
#include <boost/tokenizer.hpp>   
#include <boost/algorithm/string.hpp>   

int _tmain(int argc, _TCHAR* argv[])  
{  
	std::wcout.imbue(std::locale("chs"));  
	//待分割的字串   
	std::wstring strTag = _T("I Come from China");  

	std::vector<std::wstring> vecSegTag;  
	// boost::is_any_of這裡相當於分割規則了   
	boost::split(vecSegTag, strTag,boost::is_any_of(_T(" ,,")));

	for (size_t i  =0;i<vecSegTag.size();i++)  
	{  
		std::wcout<<vecSegTag[i]<<std::endl;  
	}  

	vecSegTag.clear();  
	std::wstring strTag2 = _T("我叫小馬,你呢,今天天氣不錯,我很高興");  
	boost::split(vecSegTag, strTag2, boost::is_any_of(_T(" ,,")));  

	for (size_t i  =0 ; i<vecSegTag.size(); i++)
	{  
		std::wcout<<vecSegTag[i]<<std::endl;
	} 

	getchar();  
	return 0;  
}