View Full Version : سوال در مورد عملگر Like و در خواست یک کوچک
arashi
پنج شنبه 04 تیر 1388, 23:48 عصر
در تابع Like هر علامت ؟ را به عنوان یک کارکتر و یا مثلا هر # را به جای عدد قبول میکنه
ایا توابعی دیگر در وی بی هستش که مثله این تابع باشه؟(یعنی مثلا ؟ را بجای یک کارکتر قبول کنه و...)
آخه در این تابع فقط میشه مقایسه کرد و کاری نمیشه کرد
کدی نیاز دارم که توی یک متن هرجا که مثلا Amir بود و بعد از ان فقط یک عدد بود را به اخرش اضافه .com کنه
مثلا
مثلا اگر وارد کردیم:
Amir6464 dost daram6464 Amir & Amir2009 Iran1
تبدیل بشه به:
Amir6464.com dost daram6464 Amir & Amir2009.com Iran1
xxxxx_xxxxx
جمعه 05 تیر 1388, 02:33 صبح
در مورد تابعي مشابه عملگر Like در دستور SQL فكر نمي كنم چنين چيزي باشه.
اما شما براي اين كار مي تونيد از تركيب چند تابع كار با رشته ها به چيزي كه مي خواهيد برسيد.
اينو امتحان كنيد:
Private Sub Command1_Click()
s = "Amir6464 dost daram6464 Amir & Amir2009 Iran1"
For i = 1 To Len(s)
pos = InStr(i, s, "Amir")
If pos > 0 Then
v = Val(Mid(s, pos + 4))
n = "Amir" & v
If v <> 0 Then
pos = pos + 4 + Len(v)
s = Replace(s, n, n & ".com")
End If
i = pos
End If
Next i
MsgBox s
End Sub
arashi
جمعه 05 تیر 1388, 03:04 صبح
در مورد کدی که نوشتی اون چیزی که من گفتم مثل بود برای اینکه متوجه بشی
ببین من تابعی میخوام که با علامت بشه حالیش کرد!(مثل همین تابع Like)
مثال:اگر وارد کنیم:
Amir64bb64 dost daram6464 Amir & Amir20ss09 Iran1
بجای هر عدد از # و هر کارکتر از $
حالا به تابع میگم هر جا این بود به ما بگه
Amir##$$##
در مورد تابعي مشابه عملگر Like در دستور SQL فكر نمي كنم چنين چيزي باشه.منظورم از اینکه مثل تابع Like باشه اینه که تابعی باشه مثلا ؟ را بجای یک کارکتر در نظر بگیره و یا # را مثل تابع Like یک عدد در نظر بگیره
در تابع های دیگه مثلا علامت ؟ را اگر بزنیم بجای یک کارکتر خود ؟ را در نظر میگره
مثلا کاش امکانش بود در تابع Replace این امکان وجود داشت
حالا در وی بی فقط همین تابع Like اینجوریه؟
arashi
جمعه 05 تیر 1388, 22:25 عصر
هیچ کسی در این مرود چیزی نمی دونه؟!
xxxxx_xxxxx
جمعه 05 تیر 1388, 23:05 عصر
سلام،
امروز به طور اتفاقي يه همچين چيزي رو تو VB ديدم.
استفاده از Like
مثلاً براي صحت آدرس ايميل مي تونيد اينطوري استفاده كنيد:
If Text1.Text Like "*?@*?.*?" = False Then MsgBox "invalid address"
حالا مي تونيد تغييرش بديد به اون حالتي كه مدنظرتون هست. در مورد علامت هاي * و ? فعلاً مطمئن نيستم كه روش استفادشون به همين صورت هست. اگر چيزي بيشتري در اين مورد فهميدم تو همين تاپيك پست ميدم.
براي من جالب بود. اولين بار بود اين عملگر رو ميديدم:چشمک:
xxxxx_xxxxx
جمعه 05 تیر 1388, 23:19 عصر
اينجا مي تونيد جزئيات بيشتري رو مشاهده كنيد:
http://msdn.microsoft.com/en-us/library/swf8kaxw(VS.80).aspx
با توجه به لينك بالا اون مثالي كه شما زديد به اين شكل ميشه:
MsgBox Text1.Text Like "*Amir#*"
موفق باشيد/
arashi
جمعه 05 تیر 1388, 23:42 عصر
ممنون ولی اینکه من از اول گفتم که من اینو از اول می دونستم که مثال زدم دیگه و گفتم مثل Like باشه
Like فقط می تونه مقایسه بکنه و چیزی که برمی گردونه یا False یا True است
و گفتم که می خوام که هر جا بود می خوام به اخرش .com اضافه بشه
ولی این فقط میگه چنین چیزی هست یا نیست
arashi
دوشنبه 08 تیر 1388, 11:12 صبح
دوستان حرفه ای وی بی راهنمایی کنند
arashi
سه شنبه 09 تیر 1388, 11:27 صبح
اگر کسی چیزی می دونه بگه که از وی بی دارم نا امید میشم!
arashi
چهارشنبه 10 تیر 1388, 15:29 عصر
دوستان حداقل یک چیزی بگید بدونم راهی نداره
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.