PDA

View Full Version : ساده ترین روش ممکن برای Regx



aleas2
دوشنبه 23 مرداد 1391, 00:10 صبح
سلام خسته نباشید دوستان کد

i = InStr(1, Text1.Text, "<img")
Do While i <> 0
j = InStr(i, Text1.Text, ">") + 1
a = Mid(Text1.Text, i, j - i)
ii = InStr(1, a, Text2.Text) + 5
jj = InStr(ii, a, Text3.Text)
Text1.Text = Replace(Text1.Text, a, Text5.Text & Mid(a, ii, jj - ii) & Text6.Text)
i = InStr(j, Text1.Text, "<img")
Loop
محتویات text ها هم

text2.text=src="
text3.text="
text5.text=<img src="
text6.text=" alt="" width="410" height="260" />
هسته میخوام این کد به ساده ترین روش با استفاده از بنویسم
Dim Mach As Match
Dim Machs As MatchCollection
Dim Regx As New RegExp
Regx.IgnoreCase = True
Regx.MultiLine = True
Regx.Global = True

کسی زحمتشو میکشه؟ممنون میشم
ضمنا" این کد دوبار باید بزنم اجرا تا کاری میخوام برام انجام بده کسی میدونه مشکلش کجای؟چون اگر درست نگاه کد کنین متوجه میشین بنده میخوام چکار کنم

arenaw
دوشنبه 23 مرداد 1391, 00:39 صبح
سلام
میشه بگی میخوای چیکار کنی؟ چون اینجوری سخته یکم تحلیلش واسه یکی که اولین باره میبینه کدارو

aleas2
دوشنبه 23 مرداد 1391, 00:52 صبح
داداش ببینین سورس یه سایت میگیرم میریزه داخل text1 بعد داخل اون سورس چندین کد عکس هسته هرچی هست مثلا به این صورت

<img style="border-bottom: medium none; border-left: medium none;
border-top: medium none;
border-right: medium none" title="" alt="" src="http://www.site.ir/files/fa/news/1391/5/18/181047_440.jpg">
که میخوام مثلا کد بالارو به این شکل در بیاره

<img src="http://www.site.ir/files/fa/news/1391/5/18/181047_440.jpg" alt="" width="360" height="225" />
کلا کد های عکس که بین متد

<img ادامه کد >
به این صورت در بیاره

<img src="http://www.site.ir/files/fa/news/1391/5/18/181047_440.jpg" alt="" width="360" height="225" />

نمیدونم متوجه منظورم شدین یا نه

arenaw
دوشنبه 23 مرداد 1391, 00:56 صبح
یعنی میخواید خاصیت style رو از تگهای img حذف کنید؟

aleas2
دوشنبه 23 مرداد 1391, 07:55 صبح
بله نگاه کد بنده درست میکردین متوجه میشدین شکل تمام تک های img میخوام به این صورت بکنم

<img src="http://www.site.ir/files/fa/news/1391/5/18/181047_440.jpg" alt="" width="360" height="225" />

aleas2
دوشنبه 23 مرداد 1391, 09:08 صبح
ممنون به همین روش کارم راه افتاد فقط یه روش بهینه برای یاد گیری میخواستم

Text11.Text = Text1.Text
i = InStr(1, Text11.Text, "<img")
Do While i <> 0
j = InStr(i, Text11.Text, ">") + 1
a = Mid(Text11.Text, i, j - i)
ii = InStr(1, a, Text2.Text) + 5
jj = InStr(ii, a, Text3.Text)
Text1.Text = Replace(Text1.Text, a, Text5.Text & Mid(a, ii, jj - ii) & Text6.Text & vbCrLf)
i = InStr(j, Text11.Text, "<img")
Loop