25-01-2009, 03:50 PM
الصفحات : 1 2
25-01-2009, 04:23 PM
هذه طريقة من الطرق .
حل على السريع
المخرجات
حل على السريع

PHP كود :
Function Ch3ar(S:String):String;
var
Le:Longword;
begin
Le:=Length(Trim(S));
Result:=Copy(Trim(S),Le-2,Le-(Le-3));
end;
المخرجات
PHP كود :
Caption:=Ch3ar(edt1.Text);
25-01-2009, 04:59 PM
طريقة اخرى مختلفة .
PHP كود :
Function Ch3ar1(S:String):String;
var
Le,i:Longword;
begin
Le:=Length(Trim(S))+1;
S:=Trim(S);
for i := 0 to 2 do
begin
Result:=Result+S[le-3];
Inc(le);
end;
end;
PHP كود :
Caption:= Ch3ar1(edt1.Text);
25-01-2009, 09:12 PM
شكرا ً لكن هل توجد طريقة اخرى ولكن مختصرة كالتي يضعها الأخ DeltaAziz
26-01-2009, 09:34 PM
إقتباس : هل توجد طريقة اخرى ولكن مختصرة .
لا اعتقد انه توجد طريقة اصغر من طريقة تستعمل Copy
اعتقد ان اخى عبدالله زعرور يريد استخراج امتداد ملف ما مصاره يكون فى Edit
هذه طريقة لذالك .
PHP كود :
Function Cha3r(S:PWideChar):TStringList;
begin
Result:= TStringList.Create;
ExtractStrings(['.'],
[' '],
S,
Result);
Result.CommaText:=Trim(Result[Result.Count-1]);
end;
PHP كود :
Caption := Cha3r(PWideChar(Edt1.Text)).Text;
Cha3r(PWideChar(Edt1.Text)).Free;

26-01-2009, 10:59 PM
استعمل copy نفس طريقة hanipino بالرد الاول حيث s هو النص
PHP كود :
Copy(S,Length(S)-2,3);
PHP كود :
var
S : string;
begin
S:=Edit1.Text;
Edit2.Text := Copy(S,Length(S)-2,3);
end;
PHP كود :
Edit2.Text := Copy(Edit1.Text,Length(Edit1.Text)-2,3);
طريقة اخرى باستخدام الوحدة StrUtils
PHP كود :
ReverseString(Copy(ReverseString(S),1,3));
ان كان الهدف هو الحصول على لاحقة ملف فهناك دالة لذلك ExtractFileExt
PHP كود :
Edit2.Text := ExtractFileExt(Edit1.Text);
26-01-2009, 11:32 PM
عجبتنى هذه الطريقة . 
1 : ----->
2 : <-----
3 : -----> Caption

إقتباس :كود :ReverseString(Copy(ReverseString(S),1,3));
1 : ----->
2 : <-----
3 : -----> Caption
26-01-2009, 11:40 PM
دائما حاول التفكير بما عندك من دوال تجد طرق/حلول كثيرة
فقط انتبه ReverseString/StrUtils غير متوفرة في كل نسخ دلفي
مثلا انا استخدم دلفي 5 وهي غير موجودة
02-02-2009, 11:07 AM
هذا الكود أفضل وأقل وهي موجودة على ما أعتقد في StrUtils
كود :
RightStr(Edit1.Text , 1, 3)02-02-2009, 05:37 PM
تعديل لتعمل مثل RightStr
PHP كود :
Function RightStr1(S:String;X,Y:LongWord):String;
var
Le:Longword;
begin
S:=Trim(S); Le:=Length(S);
Result:=Copy(S,Le-(Y-1),Le-(X-1));
end;
الصفحات : 1 2