![]() |
|
دالة FastCharPos - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : دروس دلفي للمبتدئين (https://delphi4arab.net/forum/forumdisplay.php?fid=13) +--- الموضوع : دالة FastCharPos (/showthread.php?tid=5019) |
دالة FastCharPos - SMP3 - 15-03-2013 السلام عليكم ورحمة الله وبركاته
اليوم وجدت بعض الوقت , لذلك أحببت أن أتسلى قليلا مع الأسمبلي هذه دالة تعمل على جلب موقع char في سلسلة نصية : البرامتر : Str : السلسلة النصية التي تحتوي على المحرف المراد البحث عن مكانه chr : المحرف الذي تريد البحث عنه ضمن السلسلة النصية IgnoreCase :حساسية الأحرف , تكون True ان لم ترد التفريق بين المحرف الكبير و الصغير مثلا : m=M , تكون False اذا أردت التفريق بين المحرف الكبير و الصغير offset : مكان بدأ عمل الدالة في السلسلة النصية Return Value : اذا نجحت الدالة ستعود بقيمة لمكان تواجد المحرف في السلسلة النصية اذا لم تنجح الدالة أو لم يتم العثور على المحرف فتعود بصفر PHP كود : /// <summary>مثال للاستعمال : PHP كود : ShowMessage(IntToStr(FastCharPos('Assembly','S',True)));دالة FastCharPos - syscall - 16-03-2013 وعليكم السلام طيب ايهما اسرع الدالة التي وضعتها ام التي صنعها Peter Morris في وحدته FastStrings.pas PHP كود : //NOTE : FastCharPos and FastCharPosNoCase do not require you to pass the lengthوهذا رابط الوحده بشكلها الكامل http://code.google.com/p/ljbvcltools/source/browse/trunk/%E8%B6%85%E7%BA%A7%E5%87%BD%E6%95%B0%E4%BB%A3%E7%A0%81%E5%BA%93SRTL/FastStrings.pas?spec=svn11&r=11 دالة FastCharPos - SMP3 - 16-03-2013 السلام عليكم ورحمة الله وبركاته أولا شكرا على مشاركتك أخي syscall في الحقيقة لن أستطيع الاجابة عن سؤالك .. لماذا ؟ لعدة أسباب أولا الدالتين التي وضعتهما لا تدعمان اليونيكود على غرار الدالة التي كتبتها فهي تدعم اليونيكود للدالتين برامتر مختلفة .. الدالة التي كتبتها تعمل عمل الدالتين FastCharPos +FastCharPosNoCase في آن واحد .. + مبرمجة كامل بالأسمبلي => Full Optimization |