PDA

View Full Version : جستجوی مستقل از اعراب / جستجوی عین عبارت / فیلتر



فؤاد
دوشنبه 01 تیر 1383, 01:40 صبح
با سلام

من اطلاعاتمو توی فیلدهایی از نوع Ntext ذخیره کرده ام

جستجوی مستقل از اعراب:
میخام موقع جستجو اعرابی که توی متن هست جزء متن مورد جستجو حساب نشه یعنی اینکه مثلا اگه توی متن کلمه سَلام ( با اعراب ) ذخیره شده بود وکاربر کلمه سلام (بدون اعراب) رو جستجو کرد این سلام ( اعرابدار) جزء نتیجه جستجو بیاد.

جستجوی عین عبارت:
میخام اگه کلمه است رو جستجو کرد کلمه استاد جزء نتیجه جستجو نیاد.

فیلتر کردن برخی عبارات متن:
فرض کنید به هر دلیل من توی اطلاعاتم تگ های اچ تی ام ال دارم حالا میخام اگه کاربر مثلا کلمه Color رو جستجو کرد تگ هایی که این کلمه داخل اونا هست جزء نتیجه جستجو نیاد.

با تشکر فراوان

S.Azish
سه شنبه 02 تیر 1383, 16:44 عصر
XMl Search iFilter

http://groups.google.com/groups?q=ntext+search+sql+server&hl=en&lr=&ie=UTF-8&safe=off&selm=eSeWAaJUDHA.1912%40TK2MSFTNGP12.phx.gbl&rnum=3



Alef Hamza & Kashida in arabic scripts

http://www.microsoft.com/middleeast/msdn/cpsrt.aspx



Alef hamza & search methods in Visua Foxpro (there are some similarities in Collations definition)

http://www.microsoft.com/middleeast/msdn/VisualFoxPro.aspx

sh
سه شنبه 02 تیر 1383, 22:10 عصر
آقای آذیش خوشحال شدم دیدم اومدین به سایت سر زدین

انشالله بازم تکرار بشه :flower:

فؤاد
جمعه 12 تیر 1383, 16:04 عصر
با سلام و تشکر مخصوص از آقای Azish

راستش مشکل من هنوز پابرجاست و حل نشده ولی جهت تکمیل سوال اینا رو هم اضافه کنم که من از فری تکست سرچ استفاده نمیکنم و میخوام کوئری ساده بگیرم برای برنامه نویسی هم از ASP 3 استفاده میکنم

اگه از دوستان کسی هست که میتونه کمکم کنه و یا حتی راهنمایی.... خیلی ممنون میشم خبرم کنه...

با تشکر - فواد

hr110
دوشنبه 15 تیر 1383, 06:55 صبح
با سلام،
توی یکی از پروژه ها من با این مشکل مواجه شدم و تنها راهی که در نهایت به آن متوسل شدم و جواب هم گرفتم این بود:

با استفاده از دستور replace تمامی کاراکترها و کلمات متفرقه را حذف نمودم، و هم چنین رشته ایی که مورد جستجو بود نیز در برنامه استاندارد(!) کرده و کوئری را اجرا نمودم. البته کوئری ان گاهی اوقات به کیلو بایت هم میرسید ولی بالاجبار سرعت را قربانی نیاز کردم :mrgreen:

hr110
دوشنبه 15 تیر 1383, 07:03 صبح
برای مثال در کوئری زیر سه کاراکتر Sapce, _ از نام حذف شده و علیرضا مورد جستجو قرار میگیرد:


select * from members where lower(replace(replace(replace([name],' ',''),'_',''),',','')) like 'alireza'

avebrahimi
چهارشنبه 24 تیر 1383, 19:52 عصر
سلام

بهترین راه که از کویری های بزرگ هم استفاده نکنید این است که یک
extended stored procedure
بسازید که یک فانکشن به سیستم اضافه کند که به کمک آن بتوانید اعراب را فیلتر کنید

برای اطلاعات بیشتر با info at aabee.net تماس بگیرید