提取以空格分隔的字符串中的指定数据
一个已有的Access的数据库,Data字段中有10个数据,中间用9个空格隔开,每行数据长度不一,如何将这10个数据分别提取出来呢?data为备注型数据
数据格式如下:
第一行:AA BB CC DD EE FF GG HHH III JJJ
第二行:AAA BBB CC DDD EEE FFFFF GG HH II JJJJJJJ
唯一的规律就是数据间都用空格隔开。
我可以将整个字段查询出来赋给一个String,提取这10 个数据就不会了。
[解决办法]
TStringList 的Delimiter和DelimitedText
[解决办法]
呵呵自己写个函数看看:
//提取出字符串的内容,根据空格拆分并存入容器中去://Str是源字符串,Value存放根据目标字符串的空格提取出来的每个字符串内容。void GetString( AnsiString Str, vector<AnsiString> &Value ){ AnsiString Temp(_T("")); for( int Index= 1; Index <= Str.Length(); Index++ ) { AnsiString tmp = Str.SubString(Index,1); if( tmp == " " || Index == Str.Length() ) { if( Index == Str.Length()) Temp = Temp + tmp; if( Temp.IsEmpty() ) continue; Value.push_back(Temp); Temp.SetLength(0); continue; } Temp = Temp + tmp; }}