Tsearch مشکل گشای جستجوی متن فارسی و انگلیسی در فلش

شروع موضوع توسط BioDread ‏31 دسامبر 2009 در انجمن Action Script 3

کلمات کلیدی:
  1. BioDread

    BioDread Banned

    ارسال‌ها:
    1,443
    تشکر شده:
    1,223
    امتیاز دستاورد:
    36
    نسخه 2 آماده دانلود می باشد
    تاریخ انتشار 88/10/26

    در این نسخه تمامی باگ ها برطرف شده و به نسخه BETA ارتقاع پیدا کرد
    افزایش 50% performance
    اضافه شدن preloader
    و بر طرف شدن مشکل کاراکتر space
    خواناتر شدن کد


    Tsearch یک کلاس نوشته شده توسط زبان AS3 است که شما توسط این کلاس می توانید متن مورد نظر رو جستجو کنید و موارد مورد نظر رو به صورت textformat تنظیم شده و یا به صورت highlight شده مشاهده کنید


    performance خوبی داره و فکر نکنم تو جستجو اشتباه کنه


    نسخه as2 این کلاس رو مرتضی (unknownuser) نوشته بود که من انو تقریبا در as3 گسترشش دادم


    راستشو بخوایید نمی خواستم هیچ وقت این کلاس رو بیرون بدم چون وقتی ATL بیاد در CS5 دیگه این کلا بی مصرف میشه


    Tsearch با FS مچ شده و به خوبی با فارسی کار میکنه


    FS همون FarsiStyle خودمونه



    من توسط این کلاس یه غلط یاب فارسی هم نوشتم که مثل ساعت کار میکنه !!!
    اگه فکر کنید با این کلاس میشه کلاس های دیگه ای هم نوشت

    این کلاس در پکیج JabeAbzar ارائه شده


    طرز استفاده (به روز شد)

    PHP:

    import JabeAbzar.app.Tsearch;
    import JabeAbzar.app.Clear_fs;
    import JabeAbzar.events.SearchEvent;

    var Tsearch_var:Tsearch = new Tsearch();
    var Clear_fs_var:Clear_fs = new Clear_fs();

    Tsearch_var.addEventListener(SearchEvent.Complete , search_finish);
    Tsearch_var.addEventListener(SearchEvent.Progress , search_progress);

    Tsearch_var.set_TF = text_area;
    Tsearch_var.set_speed = 6;
    Tsearch_var.set_color(0xFF8000 , .4);

    Tsearch_var.find(text_area , (Clear_fs_var.clear_text(my_farsi_style_text_return)) , false , false , true , {del:false , rep:"***"},my_text_format );

    function search_finish (event:SearchEvent):void
    {
        trace("Search "+event.Search.status);
    }
           
    function search_progress(event:SearchEvent):void
    {
        trace(event.Search.loaded);
    }
     

    توضیحات مربوط به کد ها :

    خطهای 1-2-3 : کلاس های مورد نیاز رو وارد میکنیم

    5-6 : نمونه هایی از کلاس های وارد شده می سازید

    8-9 : مانند نمونه شما باید به کلاس Tsearch دو تا listener بدید - اولی به شما اعلام میکنه که جستجو تمام شده و مقدار رشته COMPLETE رو در event مربوطه برمیگردونه
    دومی برای اینکه به شما نشون بده چه مقدار از جسجو در کل متن باقی مونده مقداره باقی مونده رو از 0 تا 1 به صورت number در event مربوطه برمیگردونه

    11- در اینجا باید به کلاس Tsearch ان TextField که قراره توش جستجو بشه رو معرفی میکنید

    12- در اینجا سرعت جستجو Tsearch رو مشخص میکنید که به صورت پیش فرض بر روی 6 هست - هر چه این عدد بیشتر باشه سرعت جستجو بیشتر میشه

    13- در اینجا رنگ و alpha مربوط به highlight رو مشخص میکنید

    15-به کلاس Tsearch و با کمک تابع find جستجو انجام میشه
    فانکشن find شامل چند پارامتر هست که به ترتیب توضیح میدم
    1-TextField مورد نظر برای جستجو رو مشخص میکنید
    2-من اینجا توسط کلاس Clear_fs امدم کاراکتر های خاصی که فارسی استایل برای justify استفاده میکنه رو پاک میکنم - این فقط برای استفاده از فارسی استایل کار برد داره و در این پارامتر شما باید
    متنی که قراره جستجو بشه رو بدید از نوع رشته
    3-مقدار true یا false میگیره و تعیین میکنید که به بزرگی یا کوچکی حروف حساس باشه یا نه
    4-مقدار true یا false میگیره و تعیین میکنید که کلمات مشابه هم نشون بده یا نه
    5-مقدار true یا false میگیره و تعیین میکنید که کلمات یافت شده رو به صورت highlight نشون بده یا نه
    6-مقدار object قبول میکنه و شما مشخص میکنید که کلمات یافت شده رو با کلمه شما جای گزین کنه - Object شما دو تا پارامتر داره - اولی تعیین میکنید که جای گزین بشه و دیگری کلمه ای که قراره جای گزین بشه
    7-TextFormat مورد نظر رو بهش میدید تا نتیجه رو با همون فرمت نشون بده - اگر هم این پارامتر رو خالی بزارید به صورت پیش فرض انتخاب میشه

    خط شماره 19 : برای نمایش وضیعت جستجو مانند نمونه عمل کنید
    خط شماره 24 : به شما مقدار جستجو رو نشون میده
    ___________--
    با آرزوی موفقیت برای شما دوستان ;-D
     

    پیوست ها:

    • Tsearch.zip
      اندازه فایل:
      کیلوبایت 33.2
      نمایش ها:
      242
    آخرین ویرایش: ‏19 ژانویه 2010
    نوشته شده توسط BioDread در ‏31 دسامبر 2009
    hosein_mirian، electron65، electro.puya و 18 نفر دیگر از این ارسال تشکر کرده اند.
  2. DaDaDooDoo

    DaDaDooDoo کاربر VIP

    ارسال‌ها:
    712
    تشکر شده:
    583
    امتیاز دستاورد:
    16
    بسیار عالی ... خسته نباشید .(خیلی حال کردم)
     
    نوشته شده توسط DaDaDooDoo در ‏31 دسامبر 2009
    madar graphic و BioDread از این پست تشکر کرده اند.
  3. ++Hadi++

    ++Hadi++ Active Member

    ارسال‌ها:
    3,529
    تشکر شده:
    5,801
    امتیاز دستاورد:
    36
    اعوذ با ال... من الشیطان الرجیم...
    خیلی ممنون لطف کردی برادر بایو جان (البته به چشم برادری ) ...:green:
    خداوند به شما توفیق دهد ...
    خدا نگهدار...
     
    نوشته شده توسط ++Hadi++ در ‏31 دسامبر 2009
    madar graphic، arman_p و BioDread از این ارسال تشکر کرده اند.
  4. BehrouzPc

    BehrouzPc پــــادشــاه فــلــــش

    ارسال‌ها:
    1,909
    تشکر شده:
    3,510
    امتیاز دستاورد:
    113
    جای تقدیر بسیار داره:rose:
     
    نوشته شده توسط BehrouzPc در ‏31 دسامبر 2009
    BioDread از این پست تشکر کرده است.
  5. BioDread

    BioDread Banned

    ارسال‌ها:
    1,443
    تشکر شده:
    1,223
    امتیاز دستاورد:
    36
    از دوستان بابت لطف شون ممنونم
    به زودی نسخه 1.1 ارائه میشه که چند باگ fix شده
     
    آخرین ویرایش: ‏31 دسامبر 2009
    نوشته شده توسط BioDread در ‏31 دسامبر 2009
    ++Hadi++ و BehrouzPc از این پست تشکر کرده اند.
  6. ++Hadi++

    ++Hadi++ Active Member

    ارسال‌ها:
    3,529
    تشکر شده:
    5,801
    امتیاز دستاورد:
    36
    راستی اگه کمک خواستی بگو تا کمکت کنم ...
    تو چیزی که تو فکرته رو بگو تا من تحلیلش کنم و کدشو تنهایی یا با هم بنویسیم ...
     
    نوشته شده توسط ++Hadi++ در ‏31 دسامبر 2009
    BioDread از این پست تشکر کرده است.
  7. BioDread

    BioDread Banned

    ارسال‌ها:
    1,443
    تشکر شده:
    1,223
    امتیاز دستاورد:
    36
    تو نسخه 1.1 هر چی به ذهنم رسیده بود رو گذاشتم
    اگه ایده ای داری خوشحال میشم کمکم کنی :rose:
     
    نوشته شده توسط BioDread در ‏31 دسامبر 2009
    ++Hadi++ و arman_p از این پست تشکر کرده اند.
  8. BioDread

    BioDread Banned

    ارسال‌ها:
    1,443
    تشکر شده:
    1,223
    امتیاز دستاورد:
    36
    نسخه 1.1 آماده دانلود
    در پست اول
     
    نوشته شده توسط BioDread در ‏1 ژانویه 2010
    amird، arman_p و BehrouzPc از این ارسال تشکر کرده اند.
  9. BehrouzPc

    BehrouzPc پــــادشــاه فــلــــش

    ارسال‌ها:
    1,909
    تشکر شده:
    3,510
    امتیاز دستاورد:
    113
    خیلی بهتر شده ، بسیار متشکر :rose:
    یه نکته من نتونستم کلمه هایی رو که توشون ــــــ Shift+J استفاده شده را جستجو کنم و نتیجه بگیرم (مثلا (جـام))
    اگه بشه توی نتیجه این مورد ها نا دیده گرفته بشه فکر کنم مشکل حل بشه ....
    البته خودم هم روش کار می کنم ببینم به نتیجه میرسم...
     
    نوشته شده توسط BehrouzPc در ‏1 ژانویه 2010
    amird، arman_p و BioDread از این ارسال تشکر کرده اند.
  10. BioDread

    BioDread Banned

    ارسال‌ها:
    1,443
    تشکر شده:
    1,223
    امتیاز دستاورد:
    36
    آره درسته
    در نسخه 1.2 درست میشه
    یه کلاس برای رفع این مشکل نوشتم
    به زودی ارائه میشه !!!
     
    نوشته شده توسط BioDread در ‏1 ژانویه 2010
    arman_p و BehrouzPc از این پست تشکر کرده اند.
  11. BioDread

    BioDread Banned

    ارسال‌ها:
    1,443
    تشکر شده:
    1,223
    امتیاز دستاورد:
    36
    نسخه 1.2 آماده دانلود می باشد
    در پست اول
     
    نوشته شده توسط BioDread در ‏2 ژانویه 2010
    hassan_kahrizy، flashpro، mohsenpoor11 و 4 نفر دیگر از این ارسال تشکر کرده اند.
  12. ++Hadi++

    ++Hadi++ Active Member

    ارسال‌ها:
    3,529
    تشکر شده:
    5,801
    امتیاز دستاورد:
    36
    پسر ترکوندی ... ها ها ها ...:lol:
     
    نوشته شده توسط ++Hadi++ در ‏2 ژانویه 2010
    arman_p و BioDread از این پست تشکر کرده اند.
  13. arman_p

    arman_p Member

    ارسال‌ها:
    437
    تشکر شده:
    222
    امتیاز دستاورد:
    16
    بابا تو دیگه کی هستی؟
    دست بیلی رو بستی!
    دست adobe رو بستی!
    :lol::lol::lol::lol::lol::lol::lol::lol::lol:
     
    نوشته شده توسط arman_p در ‏3 ژانویه 2010
    mohsenpoor11 و BioDread از این پست تشکر کرده اند.
  14. Avang2005

    Avang2005 مدیر انجمن

    ارسال‌ها:
    3,810
    تشکر شده:
    4,092
    امتیاز دستاورد:
    113
    سلام دوست من

    كلاس بسيار خفنيه !

    فقط شرمنده يكمي دير رسيدم به اين تاپيك - بخاطر سوختن هارد و مادربوردم بود .

    زنده باد ايران و زنده باد ايراني همچون شما

    موفق باشيد
     
    نوشته شده توسط Avang2005 در ‏3 ژانویه 2010
    arman_p و BioDread از این پست تشکر کرده اند.
  15. DaDaDooDoo

    DaDaDooDoo کاربر VIP

    ارسال‌ها:
    712
    تشکر شده:
    583
    امتیاز دستاورد:
    16
    باگ

    سلام بایو جان ... اجازه هست یک باگ بگیرم از کلاست ؟ وقتی کلمه ای رو در فیلد سرچ کپی کنی و بخوای بسرچی ، نمی سرچه و کلمه رو پیدا نمی کنه ... کلاس شما بر اساس حروف تایپ شده کار می کنه ؟ یعنی مثلاً حروف تایپ شده رو می ریزه تو یک آرایه و از طریق اون آرایه سرچو انجام میده ؟
     
    نوشته شده توسط DaDaDooDoo در ‏3 ژانویه 2010
    arman_p از این پست تشکر کرده است.
  16. BioDread

    BioDread Banned

    ارسال‌ها:
    1,443
    تشکر شده:
    1,223
    امتیاز دستاورد:
    36
    چون متن کانورت شده
    و دوباره کانورت بشه سرش گیج میره :D
    نباید متن کانورت شده بهش بدی

    آره بر اساس حروف هست اما آرایه نقشی نداره
    تمام کار رو indexof انجام میده
     
    نوشته شده توسط BioDread در ‏3 ژانویه 2010
    mohsenpoor11 و arman_p از این پست تشکر کرده اند.
  17. DaDaDooDoo

    DaDaDooDoo کاربر VIP

    ارسال‌ها:
    712
    تشکر شده:
    583
    امتیاز دستاورد:
    16
    من تا 10 بیشتر بلد نیستم بشمرم ... منظورت از متن کانورت شده چیه ؟
     
    نوشته شده توسط DaDaDooDoo در ‏3 ژانویه 2010
    arman_p از این پست تشکر کرده است.
  18. BioDread

    BioDread Banned

    ارسال‌ها:
    1,443
    تشکر شده:
    1,223
    امتیاز دستاورد:
    36
    برای این که بشه تو فلش متون فارسی درست دیده بشه باید به RTL کانورت بشه
    فارسی استایل یکی از این کلاس ها هست که میشه توسط ان متن رو به RTL تبدیل کرد
    RTL مخفف Rigth To Left هست

    الان ان متنی که تو textfield هست کانورت شده
    تو اگه BioDread رو از متن کپی کنی و جستجو کنی کار میکنه چون انگلیسی تبدیل به RTL نمیشه !!!
     
    نوشته شده توسط BioDread در ‏3 ژانویه 2010
    mohsenpoor11، arman_p و DaDaDooDoo از این ارسال تشکر کرده اند.
  19. DaDaDooDoo

    DaDaDooDoo کاربر VIP

    ارسال‌ها:
    712
    تشکر شده:
    583
    امتیاز دستاورد:
    16
    ok یعنی اگه از بیرون فارسی کپی کنی هم جواب می ده . فهمیدم . Tanx
     
    نوشته شده توسط DaDaDooDoo در ‏3 ژانویه 2010
    arman_p و BioDread از این پست تشکر کرده اند.
  20. BehrouzPc

    BehrouzPc پــــادشــاه فــلــــش

    ارسال‌ها:
    1,909
    تشکر شده:
    3,510
    امتیاز دستاورد:
    113
    سلام BioDread عزیز....
    یه چیزی....
    اگه Space سرچ بشه یه مشکلاتی پیش می یاد
    1 - درست همه فاصله ها رو پیدا نمی کنه و نمی تونه مشخص کنه
    2 - توی سرچ های بعد مشکل پیش می یاد

    شاید اگه اصلا نشه space رو سرچ کرد مشکل حل باشه ، منظور اینه که اول چک بشه برای وارد شدن به مرحله جستجو ،...

    موفق و پیروز باشید:rose:
     
    نوشته شده توسط BehrouzPc در ‏3 ژانویه 2010
    mohsenpoor11، arman_p، amird و یک نفر دیگر از این ارسال تشکر کرده اند.

به اشتراک بگذارید