تقسيم كردن يك متغير رشته اي به چند متغير

evil_gates

اين نيز بگذرد ...
سلام به همه
يه سوال كه احتمالا براي اساتيد خيلي سادس
من يه متغير رشته اي دارم تو mmb كه بعد هر كلمه تو اين رشته يك كاراكتر( , ) (ويرگول) وجود داره. و من مي خوام از محل ويرگولها اين متغير تقسيم بشه به متغيرهاي رشته اي ديگه اي كه هر كدوم از اونا يك كلمه از رشته رو داخل خودش داشته باشه

مثلا متغير رشته اي من اينه :

string$=client1,client2,client3,client4​

حالا مي خوام اين رشته تقسيم بشه به متغيرهاي رشته اي زير:

st1$=client1

st2$=client2

st3$=client3

st4$=client4​

و الي آخر

طول اين متغير و تعداد كلماتش مشخص نيست بنابراين فكر ميكنم بايد از يك حلقه استفاده بشه و رشته از اول بررسي بشه و به اولين , كه رسيد اون كلمه رو از رشته جدا كنه و به يك متغير نسبت بده و به همين ترتيب تا آخر رشته ادامه پيدا كنه

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

thnx a lot
:rose:
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
برای اینکار باید از آرایه ها کمک بگیرید.
اول کاراکتر ویرگول رو با یه کاراکتر دیگه مثل # عوض کنید.
یه کاراکتر # به آخر متغیر رشته ای اضافه کنید
بعد با کمک دستور ArrayGetNum (اگر اشتباه ننوشته باشم!) تعداد آیتم های آرایه رو بدست بیارید (در این مثال تعدادشون 4 تا هست)
بعد با یه حلقه ی For و با کمک دستور ArrayGetItem هر آیتم رو به یه متغیر نسبت بدید.
تمام

ببخشید که نمیتونم کد یا مثال براتون بزارم چون الان MMB در دسترس ندارم.
 

BEHESHT

Well-Known Member
سلام

من کلی خوندم تا فهمیدم چی شد:

با کدهای زیر کارت را میوفته:
کد:
t=0
u=0
s$=s$+','
tul=LEN(s$)
For i=0 To tul
  temp$=StrCopy(s$,i,1)
  If (temp$=',') Then
    t=t+1
    arr[t]=i
  End
Next i
k=arr[1]
For j=1 To t
  r=j+1
  array$[j]=StrCopy(s$,u,k)
  k=arr[r]-arr[j]-1
  u=arr[j]+1
Next j
مشکلی بود در خدمتیم

مثالش هم گذاشتم

موفق باشی

واقعاً شرمنده محمد جان ببخشید من پست شما رو ندیدم
 

پیوست ها

  • test.zip
    859 بایت · بازدیدها: 13
آخرین ویرایش:

evil_gates

اين نيز بگذرد ...
ممنون از nevercom عزيز همينطور شما behesht عزيز
مثالي هم كه گذاشتين عالي بود و دقيقا مشكل منو حل كرد

ژفقط يك سوال :
چرا بعد از جداسازي وقتي آرايه ها رو به ترتيب نشون ميده آخرين گزينه اين ميشه array$[y]:0

بازم ممنون از وقتي كه گذاشتين
thnx a lot
:rose:
 

BEHESHT

Well-Known Member
چون داخل آرایه آخر چیزی نیست در واقع null تشریف دارند :green:

بازم سوالی بود در خدمتم :)
 

جدیدترین ارسال ها

بالا