PDA

View Full Version : سوال: نحوه جستجوي كلمات فارسي در بانك عربي



Hossein1429
دوشنبه 10 اسفند 1388, 23:28 عصر
با سلام

يك بانك كلمات عربي (با اعراب) دارم كه ميخوام كلمه بدون اعراب را در آن جستجو كنم

به نظر شما چه راهي بهتر است؟

آيا در اسكيوال سرور امكاني براي نوشتن تابعي كه بتواند اين كار را انجام دهد وجود دارد؟
يا بايد خودم به نحوي كد نويسي كنم؟

مثال
مي خواهم كلمه "محمد" را در بانكي كه تعداد زيادي از فيلدها داراي كلمه "مُحَمَّدْ" هستند را جستجو كرده و تمام آن ركوردها را برگرداند.

با تشكر

Hossein1429
سه شنبه 11 اسفند 1388, 21:16 عصر
:افسرده::افسرده::افسرده:اگر فقط ايده اي هم داشته باشيد كافيه

اگه راه حل درست و حسابي هم باشه چه بهتر!!!

فقط زودتر كه پروژه نخوابه!!!

دست همتون درد نكنه:خجالت::خجالت::خجالت:

sky_in_iran
سه شنبه 11 اسفند 1388, 21:38 عصر
سلام دوست عزيز
در حال حاضر زمان جستجو به شما مقداري نميده ؟
يه پيشنهاد البته تا به حال تو اين مورد كه مدنظر شماست تست نكردم اما ايشا الله كه جواب بده تو بخش where جستجوت قبل فيلد يه N بزار مثلا



name = n'"+text1.text+"'


البته بازم ميگم تست نكردم تو اين كار :لبخندساده:

Hossein1429
سه شنبه 11 اسفند 1388, 21:57 عصر
بازم سلام

مشكل اصلي اعراب است. يعني اگر در بانك من كلمه "محمد" باشه كه پيدا مي كنه و مشكلي هم نداره، من ميخوام هم "محمد" رو پيدا كنه و هم "مُحَمَّدْ" رو.

يعني اعراب براش اهميتي نداشته باشه.

چيكار كنم ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟؟:گریه:

kamrannazari
چهارشنبه 12 اسفند 1388, 01:24 صبح
تقريبا فقط از يك روش البته مطمن باشيد كه صد در صد موارد رو جواب نمي ده ولي حدود ٨٠ يا ٩٠ درصد رو جواب مي ده


string st = "محمد";
string st2 = "%";
for (int i = 0; i < st.Length; i++)
st2 = st2 + "%" + st.Substring(i, 1);
string sql = "select * from table where name like N'"+st2+"'";