delphi4arab منتديات دلفي للعرب
كيف احذف كلمات من سلسلة نصية - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : كيف احذف كلمات من سلسلة نصية (/showthread.php?tid=4059)



كيف احذف كلمات من سلسلة نصية - DAMAX2010 - 02-04-2012

السلام عليكم

أستفسر عن عكس هذه الدالة يعني else
PHP كود :
s:=http.sl.GetText;
delete(s ,1 ,pos('<font>',s)+length('<font>')-1);
delete(s, pos('</font>',s) ,length(s) );
Memo1.Lines.Add(s); 
كيف أعمل عكسها يعني اذا لم يجد هذا في النتيجة راح يظهر لي Not Founded
في Memo1
جربت if...then ...else لم تنجح ربما أخطأت في التعبير
كما جربت try ... except و لم تنجح أيضا


كيف احذف كلمات من سلسلة نصية - zaher207 - 02-04-2012

افحص قيمة المتحول s اذا كانت لاتجلب اي شيء


كيف احذف كلمات من سلسلة نصية - DAMAX2010 - 02-04-2012

ممكن توضح أكثر


كيف احذف كلمات من سلسلة نصية - Agmcz - 02-04-2012

وعليكم السلام
بوجد عدة أمثله في المنتدى ابحث فقط
كود :
s := http.sl.GetText; s := copy(s, pos('<font>', s) + 6, pos('</font>', s) - 7); if s <> '' then Memo1.Lines.Add(s) else Memo1.Lines.Add('Not Founded');



كيف احذف كلمات من سلسلة نصية - DAMAX2010 - 02-04-2012

شكرا لك هذه تصلح مع copy أنا حبيت مع Delete
PHP كود :
delete(s ,1 ,pos('<font>',s)+length('<font>')-1);
delete(s, pos('</font>',s) ,length(s) ); 
لأن الcopy يخرج لي باقي الصفحة


كيف احذف كلمات من سلسلة نصية - Agmcz - 02-04-2012

هكدا افضل
بالتوفيق
كود :
var p1, p2: Integer; s: string; begin s := '<font>delphi</font>'; p1 := Pos('<font>', s) + Length('<font>'); p2 := Pos('</font>', s); s := Copy(s, p1, p2 - p1); if s <> '' then Memo1.Lines.Add(s) else Memo1.Lines.Add('Not Founded'); end;



كيف احذف كلمات من سلسلة نصية - DAMAX2010 - 03-04-2012

شكرا لك نجرب و نرد


كيف احذف كلمات من سلسلة نصية - onexite - 04-04-2012

استخدم pos او ansipos مثلا
if pos(.....) <>0 then
found
else
not found
او استخدم StringReplace


كيف احذف كلمات من سلسلة نصية - Agmcz - 04-04-2012

السلام عليكم
onexite
كما نعلم الدالة Pos ترجع قيمة رقمية
في هده الحالة
if Pos('work', s) <> 0 then
ادا ارجعت Pos قيمة أكبر من 0
هدا يعني ان الشرط تحقق ونص موجود
يمكن استعمالها أولا للتحقق
اخونا يريد نسخ كلمات من سلسلة نصية
أما StringReplace في حالته لن يستعملها
يكفي استعمال Copy Pos