ايران ويج

نسخه‌ی کامل: حذف کاراکتر space ازبین کلمات
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام

میخواستم بدونم چجوری میشه کاراکتر Space رو از بین دو کلمه حذف کرد؟

با تابع Trim ازچپ و راست متن میشه کم کرد ولی از وسطش نمیشه

ممنون
تابع replace
آرگومنت اول رشته اصلی، آرگومنت دوم رشته اي که تعويض ميشه، آرگومنت سوم رشته اي که جايگزين ميشه، آرگومنت چهارم انتخابی نقطه شروع جابه جايی رشته، آرگومنت پنجم انتخابی تعداد جابجی که انجام بشه

کد:
Text1 = Replace("s a l a m", " ", "")

کار با رشته ها و توابع VB رو بخون
ممنون من براتون یه برنامه میزارم کامل نیست تازه شروع کردم به نوشتنش الان تو این مطلب موندم اگه می تونین لطفا اشکالات برنامه رو بگین
ممنون
برنامه رو با این لینک بگیرین


Test 1
(۰۵-آذر-۱۳۸۸, ۲۳:۲۳:۳۳)Tender نوشته است: [ -> ]ممنون من براتون یه برنامه میزارم کامل نیست تازه شروع کردم به نوشتنش الان تو این مطلب موندم اگه می تونین لطفا اشکالات برنامه رو بگین
ممنون
برنامه رو با این لینک بگیرین


Test 1

سلام
لطف كنيد يه توضيحي در مورد فايلي كه قرار داديد بديد شايد بتونيم كمكتون كنيم

موفق باشيد
این برنامه یک جور بازیه که کاربر اول یه اسم یا حرف رو برای برنامه مشخص میکنه بعد برنامه بصورت خودکار هر حرف رو داخل یه خونه ی آرایه قرار میده

(مشکل من همینجاست یعنی نمیدونم چطور این کارو کنم کاراکتر اول و بدون مشکل وارد میکنه ولی واسه کاراکتر بعدی کاراکترهای قبلی رو هم قرار میده)بعد

کاربر دوم که بازیکن هست باید حدس بزنه چه حروفی بکار رفته اگه درست حدس بزنه تو قسمت سبز میوفته اگر اشتباه حدس بزنه تو قسمت قرمز ، اینم بگم حدس

درست تو خانه ی مشخصی میوفته (مثلا اگر اسم مورد نظرعمادباشه و بازیکن حرف "ا" رو حدس بزنه این حرف تو خونه ی سوم میوفته)ولی حدس اشتباه

اینجورنیست به ترتیب از راست به چپ میوفته. محدودیت هم میخوام بزارم براش البته با کمک شما(یعنی اگر اسم 4 کاراکتر داشته باشه بازیکن اجازه داره حدس

اشتباهش 4 بار باشه وقتی اشتباه چهارتا شد اسم مورد نظر رو بگه
.
)
سلام دوست عزيز
نقل قول: مشکل من همینجاست یعنی نمیدونم چطور این کارو کنم کاراکتر اول و بدون مشکل وارد میکنه ولی واسه کاراکتر بعدی کاراکترهای قبلی رو هم قرار میده
نگاه كن شما اومدي از تابع right استفاده كردي . اين تابع ميگه از سمت راست رشته چندتا كاراكترشو برگردونم.. به خاطر همينه كه كاراكترهاي قبلي رو هم برمي گردونه !
کد:
For intFor = 0 To bytLen - 1
    strCh(intFor) = Mid(strName, intFor + 1, 1) ' Right(strName, intFor)
    Label2.Caption = Label2.Caption + strCh(intFor)
Next intFor
به جاش بايد از تابه mid استفاده كني. اين تابع ميگه از كجاي رشته شروع كنم و چندتاشو برگردونم. اميدوارم متوجه شده باشي...
خوب . گفتي بازيكن يه كاراكتري رو ميزنه بايد ببيني درسته يا نه واسه اينكار بايد از تابع instr استفاده كني‌:
کد:
InStr([start, ]string1, string2[, compare])
به اين مثال دقت كن :
کد:
a = InStr(1, "Dreamvbfox", "F", vbTextCompare)
آرگومان اول ميگه از كجاي رشته بگردم. خوب بايد بگي از كاراكتر اول . آرگومان دوم ميگه تو چه رشته اي بگردم. (شما بايد strName بزاري همون اسم رمزدار) آرگومان بعدي ميگه دنباله چه كاراكتري بگردم (شما ميگي دنباله كاراكتري كه بازيكن زده كه txtAlphabet هست) آرگومان بعدي مربوط به حروف بزرگ و كوچيك ميشه اگر vbTextCompare بزاري تفاوتي بين اينا قائل نميشه اگر از نوع Binary‌بزاري حروف بزرگ و كوچك فرق ميكنن. (كه شما بايد vbTextCompare بزاري.
در ضمن خروجي تابع :‌اگر پيدا بشه محل كاراكتر رو برميگردونه (تو مثال بالا F وجود داره پس متغير a برابر با 8 ميشه ) اگر هم پيدا نشه برابر صفر ميشه.
شما بعد از جستجو بايد يه شرط بزاري و متغير رو بررسي كني...
اصل كاري ها رو گفتم .

يه زره هم خودت روش فكر كن بهتره.... Laugh
من بايد برم پي درس و زندگيم
موفق باشي Heart
ممنون فکرمیکنم ولی همش به بن بست می خورم نه بخاطر اشتباه فکر کردن به خاطر اینکه خیلی به جزئیات فکر می کنم اصل مطلب فراموش میشه

در هر صورت ممنون که وقتتونو گذاشتین و کمکم کردین

همینطور از باقی دوستان عزیز تشکر می کنم
کد اسکی Space چنده دوستان؟

چجوری با تابع Mid بگم اگه به کاراکتر space رسید بره کلمه ی بعدی؟
کد:
intLen = Len(strName)

For intfor = 1 To intLen
If Mid(strName, intfor, 1) <> Asc(20) Then
strCN(intfor) = Mid(strName, intfor, 1)
Label1.Caption = Label1.Caption + " , " + strCN(intfor)
End If
Label2.Caption = Label2.Caption + " , " + strCN(intfor)
Next intfor

این درسته؟
جالبه کد حذف اسپیس تو بسکامLTRIM هستش !!

کد php:
(Var=LTRIM (
کد:
For Each ch As Char In txtCode.Text

CountOperation += 1

If (ch <> ";") And (ch <> ":") And (ch <> " ") And (ch <> ",") And (ch <> "$") Then
strWord += ch
Else

' چك كردن اينكه آيا ورودي عدد است ؟
If Decimal.TryParse(strWord, Num) Then

ShowToken(TokenType.Number, strWord)
ShowToken(TokenType.Delimiter, ch)
strWord = ""

Else

IsString = True

'چك كردن متغير كه ايا فاصله است يا رشته
If Not String.IsNullOrEmpty(strWord.Trim) Then
For Each subCh As Char In strWord
If Char.IsNumber(subCh) Then
'تشخيص اينكه ايا در ميان رشته عدد وجود دارد يا تمام ان رشته است
'اگر رشته نبود متغيير زير ست ميشود و بايد پيغام خطا صادر شود
IsString = False
End If
Next
Else
'اگر فاصله در متغير باشد يعني اينكه ورودي متغيير نيست و جدا كننده فاصله است
IsString = False
End If

If IsString Then
ShowToken(TokenType.Alphabet, strWord)
Else
If Not String.IsNullOrEmpty(strWord) Then
ShowErr(strWord)
End If
End If

ShowToken(TokenType.Delimiter, ch)
strWord = ""

If ch = "$" Then
'تشخيص پايان فايل
IsEnd = True
Exit For
End If

End If
End If

If CountOperation = prgStep Then
'كنترل كردن درصد اجراي برنامه
If prgMain.Value < 100 Then
prgMain.Value += 1
CountOperation = 0
End If
End If

Application.DoEvents()

Next
سلام
اقا به اين کد ها هم يه نگاهي بکن ببين متوجه ميشي؟
ممنون دوست عزیز
ولی من یک آرایه دارم میخوام هرکدوم از این کاراکتر ها توی یک خانه ی آرایه قرار بگیره

اگر Space بود رد بشه بره کاراکتر بعدی ولی از آرایه خونه ای خالی نمونه

اگر به کد بالایی که خودم گذاشتم توجه کنی قشنگ متوجه منظورم میشی

کدی هم که شما گذاشتین کامل بود ولی من گیج شدم

بازم ممنون