حذف عبارات ناخواسته(ویژوال بیسیک)

hamalous

New Member
سلام
من فرض کنید یه فایل تکست دارم بصورت زیر:
a
e 1245
re 125
yt 258

b
sads
fds
a
h 1258
y 56+8

b
و همینطور الی آخر سوال من اینه اگه بخوام فقط خطوط بین دو عبارت a و b رو بیارم توی یه تکست باکس و بقیه خطوط حذف بشه به عبارتی در مثال بالا می خوام عبارت:
sads
fds
و همینطور خود a و b حذف بشه ، چطور این کار رو بکنم البته بعد از حذف عبارات اضافه نمی خوام فاصله ای بین بقیه عبارات باشه لطفا اگه میشه پاسخ بدین ممنون
 

the_king

مدیرکل انجمن
سلام
من فرض کنید یه فایل تکست دارم بصورت زیر:
a
e 1245
re 125
yt 258

b
sads
fds
a
h 1258
y 56+8

b
و همینطور الی آخر سوال من اینه اگه بخوام فقط خطوط بین دو عبارت a و b رو بیارم توی یه تکست باکس و بقیه خطوط حذف بشه به عبارتی در مثال بالا می خوام عبارت:
sads
fds
و همینطور خود a و b حذف بشه ، چطور این کار رو بکنم البته بعد از حذف عبارات اضافه نمی خوام فاصله ای بین بقیه عبارات باشه لطفا اگه میشه پاسخ بدین ممنون

سطر ها رو یکی یکی پردازش می کنید و میایید پایین، یک متغیر برای نشون دادن وضعیت لازمه که دو حالت بیشتر نداره، یا قبل از a است و منتظره که به a برسه
و یا بین a و b است و منتظره که به b برسه.

مشاهده پیوست GetLines.zip
 

hamalous

New Member
ممنون دوست عزیز یه سوال دیگه اگه به جای b یه عبارت دیگه باشه و ما بخوایم قسمتی از اون عبارت رو به عنوان پایان در نظر بگیریم چکار باید بکنیم بعنوان مثال فرض کنید :
a
e 1245
re 125
yt 258

asd gfr fre
sads
fds
a
h 1258
y 56+8

asd gfr fre
تو مثال بالا فقط asd ثابته و بقیه جمله متغیره حالا می خوام فقط asd رو ببینه و کاری با بقیه عبارت نداشته باشه لطفا اگه میشه راهنمایی کنید ممنون
 

the_king

مدیرکل انجمن
ممنون دوست عزیز یه سوال دیگه اگه به جای b یه عبارت دیگه باشه و ما بخوایم قسمتی از اون عبارت رو به عنوان پایان در نظر بگیریم چکار باید بکنیم بعنوان مثال فرض کنید :
a
e 1245
re 125
yt 258

asd gfr fre
sads
fds
a
h 1258
y 56+8

asd gfr fre
تو مثال بالا فقط asd ثابته و بقیه جمله متغیره حالا می خوام فقط asd رو ببینه و کاری با بقیه عبارت نداشته باشه لطفا اگه میشه راهنمایی کنید ممنون
شرط If afterA And s = "b" Then را در کد ببینید، "s = "b همون شرطی است که باید عوض کنید.
اگر بجای "s = "b از شرط "Left(s, 3) = "xyz استفاده کنید هر رشته ای که با xyz شروع می شود را به عنوان پایان بلوک قبول می کند، 3 طول رشته xyz است.
اگر بجای "s = "b از شرط "Left(s, 4) = "abcd استفاده کنید هر رشته ای که با abcd شروع می شود را به عنوان پایان بلوک قبول می کند.
اگر بجای "s = "b از شرط InStr(s, "xyz") > 0 استفاده کنید هر رشته ای که داخلش xyz وجود داشته باشد را به عنوان پایان بلوک قبول می کند.
 

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

بالا