PDA

View Full Version : نحوه حذف یک کلمه از درون یک عبارت



pedram_ns
چهارشنبه 18 اسفند 1389, 16:28 عصر
با سلام
اگر بخوام کلمه "ها" رو از درون عبارت وارد شده توسط کاربر حذف کنم، بصورتی که فقط اگر کلمه "ها" بصورت جدا نوشته شده باشه باید چکار کنم؟
دستور replace هست ولی دقیقا چطور باید نوشته بشه؟
اگر به این صورت بنویسم(یعنی "ها" با یک فاصله در قبل و بعدش)


Replace(" ها ", " ")

اگر کاربر کلمه "دانشگاه ها" رو تایپ کنه چون بعد از "ها" فاصله نیست حذفش نمی کنه.
اگر بصورت زیر بنویسم(یعنی "ها" با یک فاصله قبل از اون)

Replace(" ها", " ")

اگر کاربر کلمه "رستوران هاله" رو تایپ کنه "ها" رو حذف می کنه و جستجو ناقص میشه
اگر فقط کلمه "ها" رو (بدون فاصله) حذف کنم هم بعضی کلمات رو ناقص می کنه.
چه نظری دارید؟

Slytherin
چهارشنبه 18 اسفند 1389, 17:09 عصر
اگر بصورت زیر بنویسم(یعنی "ها" با یک فاصله قبل از اون)

Replace(" ها", " ")


اگر کاربر کلمه "رستوران هاله" رو تایپ کنه "ها" رو حذف می کنه و جستجو ناقص میشه
به همین شکل بنویسید فقط قبلش یک شرط بگذارید که اگر بعد از "ها" چیزی به غیر از فضای خالی (Space) و یا هیچی (Noting) بود دستور بالا اجرا نشود.

pedram_ns
چهارشنبه 18 اسفند 1389, 18:07 عصر
چطور باید کدش رو بنویسم می شه یک نمونه بنویسید.
من یک replace ساده می نویسم ولی اگر بخوام مقدار "ها" رو از درون متن تشخیص بدم و براش شرط تعریف کنم به چه صورت می شه؟

pedram_ns
یک شنبه 22 اسفند 1389, 15:26 عصر
خوب به جواب رسیدم برای دوستانی که ممکنه نیاز پیدا کنن.
ابتدا کلمات رو با استفاده از فاصله بین اونها تشخیص و جدا می کنیم در این صورت اگر کلمه "ها" در عبارت باشه به همین صورت جدا میشه و می شه اون رو حذف کرد ولی اگر بصورت "هاله" نوشته شده باشه "ها" حذف نخواهد شد.


search = textbox1.text
search = search.Split(" ")

For Each item As String In search
If item = "ها" Then
//delete
End If
Next