|
[ Chojba @ 23.03.2011. 23:51 ] @
| Da li neko zna za neki tutorijal koji demonstrira ovako nesto ? Ako nekome nije jasno na sta ciljam, evo primera:
Code: http://www.seabreezecomputers.com/html2bbcode/
Primer:
ulaz:
Citat:
<p style="text-align: left"><strong>Description:</strong> SoundHound is an awesome app, very much like Shazam, which can listen to and identify music; however SoundHound goes a step farther by allowing you to identify songs by singing it, humming the tune, typing or speaking into the phone! Available for both Android and iPhone, once a song is tagged you get access to a lot of info about the artist including bio, related songs, and videos, option to buy the song with link to Amazon MP3 store, social sharing options, and lyrics if available.</p>
<p style="text-align: center"><img src=" http://nsa20.casimages.com/img/2010/12/06/101206122123175889.jpg" alt="" /></p>
<p><strong>Features:</strong></p>
izlaz:
Citat: Description: SoundHound is an awesome app, very much like Shazam, which can listen to and identify music; however SoundHound goes a step farther by allowing you to identify songs by singing it, humming the tune, typing or speaking into the phone! Available for both Android and iPhone, once a song is tagged you get access to a lot of info about the artist including bio, related songs, and videos, option to buy the song with link to Amazon MP3 store, social sharing options, and lyrics if available.
[img]slika sklonjenja da ne bih mozda povredio pravilnik foruma...[/img]
Features:
E sad, ja se ubih od googlanja da vidim kako bi ovo moglo da se uradi u vb.net 2005, ali nisam ni blizu ikakvog odgovora...
Ako neko ima/zna i za 2008, 2010, nije problem, samo da nije vb 6.
I, ne mora tut, ako neko ima neku ideju, moze da je podeli ovde :) Meni je jedino palo na pamet da html citam kao tekst, i koristim nesto kao find/replace u notepadu, ali pitam se koliko sam sposoban za to :) Opet bi bilo lakse sa nekim konceptom kao sto je tutorijal.
[Ovu poruku je menjao Chojba dana 24.03.2011. u 01:52 GMT+1] |
[ sallle @ 24.03.2011. 01:12 ] @
mogo bi rucno da parsiras, karakter po karakter, pa gledas kad udjes u tag, kad izadjes...
a mogo bi i da poizbacujes tagove koristeci regularne izraze (System.Text.RegularExpressions)
npr:
Code:
Regex.Replace(input, "[<][^>]+[>]","")
[ Chojba @ 24.03.2011. 13:13 ] @
Hvala na odgovoru, vec sam poceo da "ulazim u stos" sa regex funkcijom. E sad, ovako otprilike izgleda moj kod:
Code: Public Function ConvertHTML2BB(ByVal html As String) As String
'Define regex
Dim regExp As RegularExpressions.Regex
'Regex for URL tag without anchor
regExp = New RegularExpressions.Regex("\[url\]([^\]]+)\[\/url\]")
html = regExp.Replace(html, "<a href=""$1"">$1</a>")
'Regex for URL with anchor
regExp = New RegularExpressions.Regex("\[url=([^\]]+)\]([^\]]+)\[\/url\]")
html = regExp.Replace(html, "<a href=""$1"">$2</a>")
'Image regex
regExp = New RegularExpressions.Regex("\[img\]([^\]]+)\[\/img\]")
html = regExp.Replace(html, "<img src=""$1"" />")
'Bold text
regExp = New RegularExpressions.Regex("\[b\](.+?)\[\/b\]")
html = regExp.Replace(html, "<b>$1</b>")
'Italic text
regExp = New RegularExpressions.Regex("\[i\](.+?)\[\/i\]")
html = regExp.Replace(html, "<i>$1</i>")
'Underline text
regExp = New RegularExpressions.Regex("\[u\](.+?)\[\/u\]")
html = regExp.Replace(html, "<u>$1</u>")
'Font size
regExp = New RegularExpressions.Regex("\[size=([^\]]+)\]([^\]]+)\[\/size\]")
html = regExp.Replace(html, "<span style=""font-size: $1px"">$2</span>")
'Font color
regExp = New RegularExpressions.Regex("\[color=([^\]]+)\]([^\]]+)\[\/color\]")
html = regExp.Replace(html, "<span style=""color: $1"">$2</span>")
Return html
Medjutim, kad pozovem funkciju za odredjeni text, npr:
Code: Call ConvertHTML2BB(RichTextBox1.Text)
Ne znam na koji nacin da dobijem "izlaz" koji ce biti pretvoren u bbcode i ispisan u npr richtextbox2.text
[ lonelyrider_44 @ 24.03.2011. 13:24 ] @
Code (csharp):richtextbox2.Text = ConvertHTML2BB(RichTextBox1.Text);
--
Using Opera's revolutionary email client: http://www.opera.com/mail/
[ Chojba @ 24.03.2011. 13:50 ] @
Hvala lonelyrider_44, ali ocigledno da imam problem sa kodom, moracu malo vise da se pozabavim... Kad pokrenem program, u richtextbox2 mi samo vraca html text iz richtextbox1. :S
[Ovu poruku je menjao Chojba dana 24.03.2011. u 15:07 GMT+1]
[ lonelyrider_44 @ 24.03.2011. 14:09 ] @
Izvini, odgovaram preko mail-a pa nisam obratio paznju da je u pitanju VB,
u kojem ne radim. Trebalo bi da je isto kao sto sam napisao, samo bez ";"
na kraju.
Na kraju krajeva, isto si radio i tvojoj f-ji kada si hteo da iz funkcije
Replace "izlaz" upises u promenljivu html.
Code: html = regExp.Replace(...)
promenljiva tipa string treba da dobije rezultat funkcije koja vraca
string. Samo je sada ta promenljiva richtextbox2.Text , a f-ja nije
Replace, nego ConvertHTML2BB .
--
Using Opera's revolutionary email client: http://www.opera.com/mail/
[ Chojba @ 24.03.2011. 14:28 ] @
Bas me buni :) Za ulaz <b></b> dobijam <b></b>, a za ulaz bbcod dobijam bbcod :S
Verovatno sam izmesao nesto sa ovim regularnim izrazima. Moracu da odmorim malo, pa posle da pregledam bistre glave.
edit:
Code: 'Define regex
Dim regExp As RegularExpressions.Regex
'Italic text
regExp = New RegularExpressions.Regex("<i>$1</i>")
RichTextBox2.Text = regExp.Replace(RichTextBox1.Text, "\[i\](.+?)\[\/i\]")
Skratio sam kod maksimalno da lakse utvrdim gde gresim, ali ne uspevam da uocim problem :S Ako neko vidi gde gresim bio bih zahvalan :)
[Ovu poruku je menjao Chojba dana 24.03.2011. u 18:19 GMT+1]
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|