المشاركات : 152
المواضيع 93
:
: 26
الإنتساب : Oct 2015
السلام عليكم
كيف اخذ الكلمات الموجودة ضمن اقواس
من memo1 الى memo2
المشاركات : 245
المواضيع 69
:
: 12
الإنتساب : Jan 2013
تفضل
كود :
procedure TForm1.btn1Click(Sender: TObject);
var
i:integer;
TextFind,skarika:string;
lock1:Boolean;
begin
lock1:=False;
skarika:='';mmo2.Clear;
for i:=0 to Length(mmo1.Lines.Text) - 1 do
begin
TextFind := Copy(mmo1.Lines.Text, i, 1);
if TextFind='(' then lock1:=true;
if lock1=true then skarika:=skarika+TextFind;
if TextFind=')' then lock1:=false;
end;
mmo2.Lines.Add(skarika);
end;
> مبرمج مبتدئ < سبحان الله بحمده... سبحان الله العظيم
المشاركات : 152
المواضيع 93
:
: 26
الإنتساب : Oct 2015
شكرا .
لكن هذا ينقل الاقواس ايضا
المشاركات : 117
المواضيع 1
:
: 38
الإنتساب : May 2017
(08-06-2017, 07:49 PM)jeanjamil كتب : شكرا .
لكن هذا ينقل الاقواس ايضا
كود :
يمكنك إضافة هذا لكود SKARIKA قبل Memo2.Lines.Add(skarika);
//لتغيير الأقواس بالمسافة
skarika := StringReplace(skarika, '(', ' ', [rfReplaceAll]);
skarika := StringReplace(skarika, ')', ' ', [rfReplaceAll]);
المشاركات : 1
المواضيع 0
:
: 0
الإنتساب : Jun 2016
16-06-2017, 02:37 AM
(آخر تعديل لهذه المشاركة: 16-06-2017, 06:44 AM بواسطة Admin.)
شاهد هذا الكود ممكن تستفيد منه :
كود :
function getText(text:string;newLine:boolean=False):string;
const
open_p='(';
close_p=')';
var
index:integer;
indexEnd:integer;
word:string;
begin
word:='';
result:='';
index:=1;
indexEnd:=0;
while(text<>'') and (index>0) do
begin
index:=pos(open_p,text);
if index>0 then
begin
indexEnd:=pos(close_p,text);
word:=copy(text,index+1,(indexEnd-(index+1)));
result:=result+word;
if newLine then
result:=result+sLineBreak;
text:=copy(text,pos(close_p,text)+2,length(text));
end;
end;
end;
//--------------Example
Memo2.Text:=getText(Memo1.text,True);
pastebin.com/PuHQnDdp