如何取出一个字符串中每相邻两个空格之间的字符?
两个或多个连续空格算作一个空格,取出的字符串放入一个TList容器中.
如无空格则取整个字符串,从第一个不为空格的字符开始取.这应该就是许多搜索引擎要用到的取用户输入字符的算法.
如有好的算法给高分
两个或多个连续空格算作一个空格,取出的字符串放入一个TList容器中.
如无空格则取整个字符串,从第一个不为空格的字符开始取.这应该就是许多搜索引擎要用到的取用户输入字符的算法.
如有好的算法给高分
解决方案 »
- TOpenDialog 得到文件名是乱码问题
- select中带有dateTimepicker值
- 如何获取任务栏程序的图标
- 请问:这里的空应怎么填呀?
- 重分打造 在DBGRID里合并记录
- 请教dxdbgrid问题?
- 如何在一个TDBChart中显示多个Series?并且可以手工隐藏特定的Series,显示特定的Series?急!!!
- 怎么样使messagedlg出现的标题和内容以及按钮上的文字都是自己定义的中文?
- 怎么把TJPEGImage中的图片调入canvas中编辑后再由TJPEGImage保存成jpeg
- 当鼠标在某一控件上时,如何知道该控件的名称和类型
- ■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
- delphi2006怎么会这么奇怪的问题?
var sl :TStringList;
begin
sl := TStringList.Create;
sl.Delimiter := ' ';
sl.DelimitedText := s;
Result := sl;
end;
否则如下:
procedure TForm2.Button1Click(Sender: TObject);
function DelFirst(S:String):string;
var i ,Count :integer;
begin
Count :=Length(S);
for i := 1 to Count do
if S[i]<>' ' then
begin
Result :=Copy(s,i,Count-i+1);
break;
end;
end;
var p:integer;
s:string;
begin
S :=DelFirst(Edit1.text);
Edit2.Text :=s; p :=-1;
Memo1.Clear;
While p<>0 do
begin
p :=Pos(' ',s);
if p<>0 then
Begin
Memo1.Lines.Add(Copy(S,0,p));
S :=Copy(S,p+2,Length(S)-p);
S :=DelFirst(S);//再次去掉首部的空格,即三个的空格也按两个算,否则去掉此句。
End;
end;
Memo1.Lines.Add(S);//将最后剩余的再加上。
end;
Memo1.Lines.Add(Copy(S,1,p-1));
S :=Copy(S,p+2,Length(S)-p-1);
可是不知调用他的 GetText函数后怎么从TStringList的对象里取出
所有的值,这个对象没有Item属性啊,大家帮我再看看,国庆都没休息,真是
辛苦大家了
begin
Memo1.Lines.Delimiter :=' ';
Memo1.Lines.DelimitedText :=Edit1.Text;
end;
var
strMatch: TStringList;
begin
strMatch := GetText(Edit1.Text);//楼上liangqingzhi(老之)给的那个函数
if strMatch.Count>0 then
for i :=0 to strMatch.Count do
取出strMatch当前值(问题在这里不知如何取,strMatch.Item[i]?)
end;
var
strMatch: TStringList;
i : integer;
begin
strMatch := GetText(Edit1.Text);
if strMatch.Count>0 then
for i :=0 to strMatch.Count - 1 do
ShowMessage(strMatch[i]);
end;
最近才用Delphi帮导师做个光盘检索的小程序,多亏大家帮忙啊.想跟你交个朋友,能告诉QQ号吗?
我的QQ是:254752890还有foxyy8888(SY强身,YY强国)你也是好兄弟,能告诉QQ号吗?
你俩每人给50分