PDA

View Full Version : تعداد یک حرف در یک جمله



FirstLine
شنبه 02 اسفند 1382, 08:31 صبح
با سلام
چجوری میتوان تعداد یک حرف یا کلمه را در یک جمله و یا عبارت بدست آورد؟ آیا تابعی وجود دارد؟
با تشکر

Sepidar
شنبه 02 اسفند 1382, 09:06 صبح
تابع length
البته اگر تعداد حروف رشته به معنی متعارف رو می خوای باید blankهای رشته ات رو حذف کنی. یه چیزی شبیه به این:


while pos(s,#32)<>0 do delete(s,pos(s,#32),1);

FirstLine
شنبه 02 اسفند 1382, 10:43 صبح
با سلام
دوست عزیز از راهنمایی شما سپاسگزارم.
مشکل من اینه که میخوام مثلا تعداد تکرار حرف "س" را در کل این تاپیکی که الان نوشته ام را بدست آورم.
با تشکر

moradi_am
شنبه 02 اسفند 1382, 10:47 صبح
پاسخ شما اینست :


var count,po,ln:integer;
var search_st:string;
var searched_st:string;
begin
count:=0;
searched_st:=Edit1.text;
search_st:=Edit2.text;
ln:=length(search_st);
po:=pos(search_st,searched_st);
Canvas.TextOut(2,2,inttostr(po));
while po>0 do
begin
count:=count+1;
searched_st:=copy(searched_st,po+ln,100);
Canvas.TextOut(count+3,2,searched_st);
po:=pos(search_st,searched_st);
end;
Label1.caption:=inttostr(count);
end;

moradi_am
شنبه 02 اسفند 1382, 10:49 صبح
البته سطرها مربوط به Canvas برای کنترل برنامه بود و لزومی ندارد

hr110
شنبه 02 اسفند 1382, 11:06 صبح
ممکن است این هم یک جواب باشد :wink:



var
Count,I : Integer;
S,S2 : string;
begin
S:='THIS IS A SAMPLE STRING for you';
S2:='I';
Count:=0;
for I:=1 to Length(S) do
if LowerCase(Copy(S,I,Length(S2)))=LowerCase(S2) then
Count:=Count+1;
Caption:=IntToStr(Count);