ورود

View Full Version : جلوگیری از جستجوی بعضی کلمات با استفاده از FTS



SoheilKH
چهارشنبه 24 اسفند 1384, 16:25 عصر
سلام
روی یک فیلد FTS گذاشتم و با استفاده از دستورات مربوطه به FTS کوئری میگیرم.

یک مشکل دارم و آن اینکه بعضی از کلمات را نمی خواهم در جستجو شرکت دهم. به عنوان مثال در این فیلد متن مقالات به صورت HTML وجود دارند.

من نمی خواهم attribute ها tag های html مورد جستجو قرار گیریند. مثلا یک مقاله شامل tag
<P dir=rtl style="DIRECTION: rtl; unicode-bidi: embed; است .

اگر کاربر کلمه unicode را جستجو کند این رکورد Select می شود.در صورتیکه محتوای اصلی مقاله اصلا ربطی به unicode ندارد.
البته فکر کنم با NoiseWord ها بشه یه جورایی مشکل را حل کرد اما امکان دارد مقاله ای در مورد html باشد و Tag را توصیف کرده باشد. و در این جا باید مقاله را Select کند
آیا راهی وجود دارد که به FTS بفهمانیم که باید داخل Tag ها را بیخیال به بشه؟ و بره سر اصل مطلب؟
با تشکر

AminSobati
چهارشنبه 24 اسفند 1384, 19:52 عصر
اینجا نیاز به Custom Filter پیش میاد که FTS پشتیبانی میکنه اما چون تا به حال چنین کاری انجام ندارم، اطلاعی از دشواری یا آسانی اون ندارم. یک پیشنهاد میتونه این باشه که شما سورس HTML رو از متن داخلش تفکیک کنید. مثلا متن رو در یک فیلد جدا ذخیره کنید و FTS روی این فیلد کار کنه. جدا کردن متن از سورس میدونم چندان ساده نیست اما توسط Objectهایی که یک HTML رو میتونین Parse کنند، حتما امکان پذیره

rabinhood_tehran
پنج شنبه 25 اسفند 1384, 10:27 صبح
سهیل جان :
نوع فیلدتو از نوع image انتخاب کن . اونوقت باید یک فیلد دیگه هم اضافه کنی که نوع محتوا رو داشته باشه . مثلا اینکه : HTML , ppt , txt , doc . بعد میتونی مطمئن باشی که قالبهای فرمت بندی در هر کدوم از اینها جستجو نمیشوند (ایندکس هم نمیشوند.)

SoheilKH
پنج شنبه 25 اسفند 1384, 10:53 صبح
سهیل جان :
نوع فیلدتو از نوع image انتخاب کن . اونوقت باید یک فیلد دیگه هم اضافه کنی که نوع محتوا رو داشته باشه . مثلا اینکه : HTML , ppt , txt , doc . بعد میتونی مطمئن باشی که قالبهای فرمت بندی در هر کدوم از اینها جستجو نمیشوند (ایندکس هم نمیشوند.)

مطمئنی رابین جان.؟؟؟ میشه بیشتر راهنمایی کنی

امین جان در رابطه با Custom Filter ، کتاب یا مقاله سراغ نداری.

AminSobati
پنج شنبه 25 اسفند 1384, 13:16 عصر
من چند لینک در این تاپیک گذاشتم، اگر هنوز Active باشه:
http://www.barnamenevis.org/forum/showthread.php?t=17355
ولی خاطرم نیست که آیا Filterها رو هم پوشش میده یا نه. در اینترنت Search کنین حتما پیدا میشه

rabinhood_tehran
شنبه 27 اسفند 1384, 09:52 صبح
سهیل جان :
من تو MSDN خوندم . لینکشو ندارم و لی اگه پیدا کردم رو چشم !!!

rabinhood_tehran
شنبه 27 اسفند 1384, 09:57 صبح
وقتی داری ویزارد رو میری جلو (برای ساخت Index ) اونوقت که داری فیلدو انتخاب میکنی , جلوش دوتا فیلد هست. یکی زبان و دیگری DocumentType میتونی اونجا نوعشو انتخاب کنی (نوع سند) بعد خود SQL اون کاری رو که میخواستی انجام میده !