رفتن به مطلب
  • 0

تقسیم کردن یک رشته


AMiR

سوال

با سلام

 

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

 

بطور مثال یه رشته عددی داریم این صورت : 235796125896

 

بخواییم 4 تا 4 تا جداشون کنیم و بینشون هم یه کارکتر دیگه باشه مثلا به این صورت : 5896 | 9612 | 2357

 

 

یه سوال دیگه هم داشتم

امکان این هست تعداد کارکتر هایی که داخل ادیت تکست نوشته میشه رو شمرد؟؟

 

ممنون میبشم راهنمایی کنید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

10 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

Dim l As List,s As String
s = "Aado68SDJksid,o0"
l.Initialize
If s.Length mod 4 = 0 Then
Do While s.Length <> 0
	l.Add(s.SubString2(0,4))
	s = s.SubString(4)
Loop
End If

توی لیست L متن ها چهار تا چهار تا قسمت شده توش هست

لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

سلام

مثلا میخواید عدد 235759612 رو چهار رقم چهار رقم جدا کنید .

Dim f,m As Int

1- عدد رو تقسیم بر 10000 میکنیم تا به صورت اعشار در بیاد . 

 

2- با Mod قسمت اعشاری رو بدست میاریم . 

s = 235759612 mod 10000

که به صورت 9612  بر میگردونه .

 

 

اگه بخواهید ارقام اول رو بدست بیارید از floor استفاده میکنیم . 

f = Floor(43435454 / 1000)

تعداد ارقام بدست اومده هم به 1000 مربوطه . 

 

 

تشکر بابت پاسختون

 

ولی من این 4 تا 4 تا جدا کردن یکم متوجه نشدم!!

 

تعداد این عددا ممکنه متغیر باشه ولی در هر حال مساوی با مضرب 4 تعدادشون

 

 

وقتی عدد رو تقسیم بر4 کنم با mod فقط میتونم 4 رقم اعشارش رو بدست بیارم، عددای صحیحش رو چطوری جدا کنم؟؟؟

 

قبلا شنیده بودم با اسپلیتر میشه جدا کرد ولی دستور العملش بلد نیستم !!

لینک ارسال
به اشتراک گذاری در سایت های دیگر

لینک ارسال
به اشتراک گذاری در سایت های دیگر

مثل اینکه split هم امکانش نیست چون کارکتر ثابتی بین هر 4 عدد نمیشه گذاشت

 

 

این سوال :

وقتی عدد رو تقسیم بر4 کنم با mod فقط میتونم 4 رقم اعشارش رو بدست بیارم، عددای صحیحش رو چطوری جدا کنم؟؟؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

هیچ راه و دستوری وجود نداره بگیم که از سمت چپ یا راست 4 رقم بشماره و بعد یکاری کنه ؟!!!!!

 

تقسیم کردن امکان نداره چون این رشته string هست و توش ممکنه حروف هم وجود داشته باشه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

هیچ راه و دستوری وجود نداره بگیم که از سمت چپ یا راست 4 رقم بشماره و بعد یکاری کنه ؟!!!!!

تقسیم کردن امکان نداره چون این رشته string هست و توش ممکنه حروف هم وجود داشته باشه

ساب استرینگ
لینک ارسال
به اشتراک گذاری در سایت های دیگر

ببین

شما وقتی یه عدد رو تقسیم بر مثلا 1000 میکنی، 4 رقم اول میشه جواب تقسیمت

4 رقم اخر میشه باقیمانده تقسیمت

نگاه کن

Dim adadMain As Int
Dim adadHasel As Int
adadMain = 12345678
adadMain = (adadMain / 10)
adadHasel = (adadMain mod 10)
Log(adadHasel) 'shows 5678'
Log(adadMain) 'shows 1234
'
لینک ارسال
به اشتراک گذاری در سایت های دیگر

ساب استرینگ

امکانش هست نمونه سورسی یا توضیحی در مورد این ساب بدید؟ اصن من چطوری میتونم ازش استفاده کنم؟ کار این ساب چیه؟

 

 

ببین

شما وقتی یه عدد رو تقسیم بر مثلا 1000 میکنی، 4 رقم اول میشه جواب تقسیمت

4 رقم اخر میشه باقیمانده تقسیمت

نگاه کن

Dim adadMain As Int
Dim adadHasel As Int
adadMain = 12345678
adadMain = (adadMain / 10)
adadHasel = (adadMain mod 10)
Log(adadHasel) 'shows 5678'
Log(adadMain) 'shows 1234
'

 

مشکل اینه که این رشته فقط عدد نیست ممکنه به این شکل باشه : 006d0061006a

 

و شاید 4 کارکتر باشه شاید 16 کارکتر باشه یا شاید 40 کارکتر باشه !!!! یا حتی بیشتر

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

مثلا میخواید عدد 235759612 رو چهار رقم چهار رقم جدا کنید .

Dim f,m As Int

1- عدد رو تقسیم بر 10000 میکنیم تا به صورت اعشار در بیاد . 

 

2- با Mod قسمت اعشاری رو بدست میاریم . 

s = 235759612 mod 10000

که به صورت 9612  بر میگردونه .

 

 

اگه بخواهید ارقام اول رو بدست بیارید از floor استفاده میکنیم . 

f = Floor(43435454 / 1000)

تعداد ارقام بدست اومده هم به 1000 مربوطه . 

 

 

در آخر هم بینشون " | " قرار میدیدم . 

Log(f & "|" & s )

در رابطه با سوال دومتون :

Log("تعداد کاراکتر ها برابر است با : " & EditText1.Text.Length)
لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...