想统计memo组件里面的某个单词的数量,例如,memo里面有多少个word这样的词语,
本人瞎写了一段,但没法实现。谢谢
var
Tem1,Tem2:string;
Tem_int,i,j:integer; begin
j:=0;
tem1:=memo1.text;
Tem2:=edit1.text;
for i:=0 to memo1.MaxLength do
begin
Tem_int:=pos(Tem2,Tem1);
j:=j+1;
end;
label1.caption:=inttostr(j);
本人瞎写了一段,但没法实现。谢谢
var
Tem1,Tem2:string;
Tem_int,i,j:integer; begin
j:=0;
tem1:=memo1.text;
Tem2:=edit1.text;
for i:=0 to memo1.MaxLength do
begin
Tem_int:=pos(Tem2,Tem1);
j:=j+1;
end;
label1.caption:=inttostr(j);
ordabcwordbbbwordbbb
i:=Length(memo1.text)
Memo1.Text:=StringReplace(Memo1.Text,Edit1.Text,[rfReplaceAll, rfIgnoreCase]);
label1.caption:=(i-Length(Memo1.Text))/Length(Edit1.Text);
V = 'word';
var
I : integer;
S : string;
begin
{ 如果分布在两行上的单词也计算,就加这句,否则,就是:S := Memo1.Text }
S := StringReplace(Memo1.Text,#13#10,'',[rfReplaceAll]);
I := Length(S);
S := StringReplace(S,V,'',[rfReplaceAll,rfIgnoreCase]);
Showmessage(FloatToStr((I-Length(S)) / Length(V)));
end;