PDA

View Full Version : جستجو در یک متن



jiya200
سه شنبه 04 اسفند 1388, 12:07 عصر
دوستان سلام
من یک متن دارو که به صورت زیر است :

sss,ccc,sssa,aaaa,XXXX,yyy

حالا من تعداد کاما ها ی بکار رفته شده در متن رو میخوام.

من توابع رو چک کردم ولی چیزی با این کاربرد داخلش نبود.
خلاصه دسته بروبچه حرفه ایی درد نکنه .
منتظرم .:ناراحت:

xxxxx_xxxxx
سه شنبه 04 اسفند 1388, 15:07 عصر
MyStr = "sss,ccc,sssa,aaaa,XXXX,yyy"
MsgBox UBound(Split(MyStr, ","))
،Split یک رشته رو بر اساس یک عبارت تکه تکه میکنه و همه قسمت ها رو در یک آرایه قرار میده. یعنی خروجیش آرایه هست. پس چون خروجی آرایه هست، میتونیم با تابع UBound حد بالای آرایه رو بدست بیاریم. حد بالای آرایه هم تعداد دفعات تکرار اون عبارت جداکننده هست که ما دراینجا علامت کاما درنظر گرفتیم.

با یک حلقه هم میشه اینکارو کرد اما به نظرم این کار ساده تر اومد. البته Split و UBound و LBound معمولا کاربرد دیگری دارند ولی میشه اینجا ازش به عنوان ترفند استفاده کرد.:چشمک:

موفق باشید/

hossein71
سه شنبه 11 اسفند 1388, 10:01 صبح
tex1.text=متن مورد نظر
t=تعداد ","



x=0
t=0
While x <> Len(Text1.Text)
x = x + 1
If Mid$(Text1.Text, x, 1) = "," Then
t = t + 1
End If
Wend
text2.text=t


امیدوارم تونسته باشم مشکلت رو حل کنم.