Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

odstranenie medzier v html zdroji

26 views
Skip to first unread message

stevo

unread,
Apr 27, 2010, 11:32:46 AM4/27/10
to
robim v C# jeden program ktory nacita z internetovej stranky text, tazke
musi odtranit zo zdrojaku stranky html kody a scripty a tak. to sa mi dari
ale ked je zdrojak robeny s vela prazdnymi riadkami tak sa ich nievem
zbavit. neviem aky kod mam nechat vynechat.

ukazka co myslim:

text


dalsi text

dalsi text


a prave tych pradznych riadkov sa neviem zbavit. medzi nimi je <P> aj <br>
tych sa zbavim ale v zdrojaku su take medzery. niekde boli aj viacere
medzery ale to som vyhodil. predpokladam ze stranka bola robena ako klasicky
text a potom doplnene html kody bed vymazania prave tych medzier.

ing. Jan Chaloupek

unread,
Apr 27, 2010, 11:43:48 AM4/27/10
to
DD.

Pokud by jste to měl v textovém editoru, tak se prazdné řádky odstraňují
tím že nahrazujete řetězce CR+LF+CR+LF řetězcem CR+LF.

Nešlo by to aplikovat na váš případ?

S pozdravem
ing. Jan Chaloupek

Dne 27.4.10 17:32, stevo napsal(a):

stevo

unread,
Apr 27, 2010, 12:09:36 PM4/27/10
to
neviem presne ako by som toto mohol pouzit

obsah uz bez html kodu mi vlozi do richTextBoxu aby som vedel ten text
pripadne este upravit, potom mi ho podeli na jednotlive slova


este som si vsimol ze pri niektoych strankach mi tam okrem tychto medzier
zostava medzera jak po stlaceni tabulatoru s tym si tiez neviem rady

odstranenie kodu mam robene pomocou porovnavania kazdeho znaku jak idu za
sebov a ked sa niektore zhoduju s tym co chcem vylucit tak tie mi tam potom
nevlozi.

napriklad ak ma pevnu medzeru: &nbsp tak ked toto najde tak to vynecha. a
prave neico take potrebujem na ten prazdny riadok a tabulator, len kod
tychto prave nezobrazuje. prehliadace toto ignoruju a zobrazia to maximalne
len ako jednu medzeru za vsetky ale v zdrojaku su tam vsetky.

"ing. Jan Chaloupek" <honza...@unidataz.cz> nap�sal v spr�ve
news:#KoJvBi5...@TK2MSFTNGP04.phx.gbl...
> DD.
>
> Pokud by jste to m�l v textov�m editoru, tak se prazdn� ��dky odstra�uj�
> t�m �e nahrazujete �et�zce CR+LF+CR+LF �et�zcem CR+LF.
>
> Ne�lo by to aplikovat na v� p��pad?

ing. Jan Chaloupek

unread,
Apr 28, 2010, 12:26:05 AM4/28/10
to
DD,

ja vam asi nerozumim.

Pokud mate v textu nejake znaky, ktere tam nechcete, tak je proste
ignorujte (nevkladejte je k sobe).
Nebo nevite jake znaky to jsou? To snad jde zjistit velice snadno ne?

S pozdravem
ing. Jan Chaloupek

Dne 27.4.10 18:09, stevo napsal(a):


> neviem presne ako by som toto mohol pouzit
>
> obsah uz bez html kodu mi vlozi do richTextBoxu aby som vedel ten text
> pripadne este upravit, potom mi ho podeli na jednotlive slova
>
>
> este som si vsimol ze pri niektoych strankach mi tam okrem tychto
> medzier zostava medzera jak po stlaceni tabulatoru s tym si tiez neviem
> rady
>
> odstranenie kodu mam robene pomocou porovnavania kazdeho znaku jak idu
> za sebov a ked sa niektore zhoduju s tym co chcem vylucit tak tie mi tam
> potom nevlozi.
>
> napriklad ak ma pevnu medzeru: &nbsp tak ked toto najde tak to vynecha.
> a prave neico take potrebujem na ten prazdny riadok a tabulator, len kod
> tychto prave nezobrazuje. prehliadace toto ignoruju a zobrazia to
> maximalne len ako jednu medzeru za vsetky ale v zdrojaku su tam vsetky.
>

> "ing. Jan Chaloupek" <honza...@unidataz.cz> napísal v správe
> news:#KoJvBi5...@TK2MSFTNGP04.phx.gbl...
>> DD.
>>


>> Pokud by jste to měl v textovém editoru, tak se prazdné řádky
>> odstraňují tím že nahrazujete řetězce CR+LF+CR+LF řetězcem CR+LF.
>>
>> Nešlo by to aplikovat na váš případ?
>>

stevo

unread,
Apr 28, 2010, 2:31:44 AM4/28/10
to
no to ich chcem ognorovat ale tie znaky nevidim, lebo jeden je prazdny
riadok a druhy je tabulator.

napriklad viac medzier za sebou odstranim takto:

if (source == [i]' ' && source[i + 1]== ' ') {
dvojmedzera = true;
}

pole source obsahuje znak po znaku celeho zrojaku web stranky

ale neviem ako tymto alebo akym sposobom vylucit tabulator alebo prazdny
riadok

lebo takto mi ostava este take nieco:

text
<tabulator><tabulator>text
<prazdny riadok>
<prazdny riadok>
text


<tabulator> je medzera aku urobi tabulator napr v obycajnom textaku
<prazdny riadok> je prazdny riakok ako ked si v textaku odenterujete prazdny
riadok

a prave tieto dve neviem akym sposobom pri porovnavani znak po znaku nechat
vylucit kedze vlastne ziaden znak tam nevidiet

"ing. Jan Chaloupek" <honza...@unidataz.cz> napísal v správe

news:uM2fsro...@TK2MSFTNGP02.phx.gbl...

ing. Jan Chaloupek

unread,
Apr 28, 2010, 3:20:05 AM4/28/10
to
DD,

asi jsme kazdy trochu jiny ale podle me nemate pravdu.

Tabulator je znak TAB a novy radek je znak CR nebo 2 znaky (CR+LF).

Zjistit ordinalni cisla znaku by snad pro programatora nemel byt zadny
problem nebo ano?

S pozdravem
ing. Jan Chaloupek

Dne 28.4.10 8:31, stevo napsal(a):

P.L.

unread,
Apr 28, 2010, 3:49:38 AM4/28/10
to
Proč se nepodíváte do obsahu proměnné?

Předpokládám, že potřebujete vyhodit "\r", nahradit "\n" mezerou a nahradit "\t" mezerou a nakonec ošetřit dvojité mezery.

Dne 27.4.2010 18:09, stevo napsal(a):


> neviem presne ako by som toto mohol pouzit
>
> obsah uz bez html kodu mi vlozi do richTextBoxu aby som vedel ten text
> pripadne este upravit, potom mi ho podeli na jednotlive slova
>
>
> este som si vsimol ze pri niektoych strankach mi tam okrem tychto
> medzier zostava medzera jak po stlaceni tabulatoru s tym si tiez neviem
> rady
>
> odstranenie kodu mam robene pomocou porovnavania kazdeho znaku jak idu
> za sebov a ked sa niektore zhoduju s tym co chcem vylucit tak tie mi tam
> potom nevlozi.
>
> napriklad ak ma pevnu medzeru: &nbsp tak ked toto najde tak to vynecha.
> a prave neico take potrebujem na ten prazdny riadok a tabulator, len kod
> tychto prave nezobrazuje. prehliadace toto ignoruju a zobrazia to
> maximalne len ako jednu medzeru za vsetky ale v zdrojaku su tam vsetky.
>

> "ing. Jan Chaloupek" <honza...@unidataz.cz> napísal v správe
> news:#KoJvBi5...@TK2MSFTNGP04.phx.gbl...
>> DD.
>>


>> Pokud by jste to měl v textovém editoru, tak se prazdné řádky
>> odstraňují tím že nahrazujete řetězce CR+LF+CR+LF řetězcem CR+LF.
>>
>> Nešlo by to aplikovat na váš případ?
>>

stevo

unread,
Apr 28, 2010, 3:58:52 AM4/28/10
to
hladal som rozne veci a aj skusal ale nijak sa mi to zatial nepodarilo

uz som aj pochopil CR a tak ale este som neprisiel na to ako z toho urobit
char aby som to vedel porovnat

"ing. Jan Chaloupek" <honza...@unidataz.cz> nap�sal v spr�ve

news:#Bk#6Mq5KH...@TK2MSFTNGP02.phx.gbl...

>> "ing. Jan Chaloupek" <honza...@unidataz.cz> nap�sal v spr�ve

>> news:uM2fsro...@TK2MSFTNGP02.phx.gbl...
>>> DD,
>>>
>>> ja vam asi nerozumim.
>>>
>>> Pokud mate v textu nejake znaky, ktere tam nechcete, tak je proste
>>> ignorujte (nevkladejte je k sobe).
>>> Nebo nevite jake znaky to jsou? To snad jde zjistit velice snadno ne?
>>>
>>> S pozdravem
>>> ing. Jan Chaloupek
>>>
>>> Dne 27.4.10 18:09, stevo napsal(a):
>>>> neviem presne ako by som toto mohol pouzit
>>>>
>>>> obsah uz bez html kodu mi vlozi do richTextBoxu aby som vedel ten text
>>>> pripadne este upravit, potom mi ho podeli na jednotlive slova
>>>>
>>>>
>>>> este som si vsimol ze pri niektoych strankach mi tam okrem tychto
>>>> medzier zostava medzera jak po stlaceni tabulatoru s tym si tiez neviem
>>>> rady
>>>>
>>>> odstranenie kodu mam robene pomocou porovnavania kazdeho znaku jak idu
>>>> za sebov a ked sa niektore zhoduju s tym co chcem vylucit tak tie mi
>>>> tam
>>>> potom nevlozi.
>>>>
>>>> napriklad ak ma pevnu medzeru: &nbsp tak ked toto najde tak to vynecha.
>>>> a prave neico take potrebujem na ten prazdny riadok a tabulator, len
>>>> kod
>>>> tychto prave nezobrazuje. prehliadace toto ignoruju a zobrazia to
>>>> maximalne len ako jednu medzeru za vsetky ale v zdrojaku su tam vsetky.
>>>>

>>>> "ing. Jan Chaloupek" <honza...@unidataz.cz> nap�sal v spr�ve

>>>> news:#KoJvBi5...@TK2MSFTNGP04.phx.gbl...
>>>>> DD.
>>>>>


>>>>> Pokud by jste to m�l v textov�m editoru, tak se prazdn� ��dky
>>>>> odstra�uj� t�m �e nahrazujete �et�zce CR+LF+CR+LF �et�zcem CR+LF.
>>>>>
>>>>> Ne�lo by to aplikovat na v� p��pad?
>>>>>

stevo

unread,
Apr 28, 2010, 4:09:08 AM4/28/10
to
lenze porovnavam znak po znaku a do char \r (ani ine) nevopcham aspon neviem
ako lebo mi to nechce nijak zobrat

dvojite medzery mam uz osetrene

"P.L." <neuvedena> napísal v správe
news:umm$bdq5KH...@TK2MSFTNGP04.phx.gbl...

stevo

unread,
Apr 28, 2010, 4:22:53 AM4/28/10
to
dakujem obom.

taka blbost stacilo mi len toto dat

if (let == System.Convert.ToChar(10))

prazdne riadky mi vynecha

"stevo" <ste...@centrum.cz> napísal v správe
news:uBgol7h5...@TK2MSFTNGP02.phx.gbl...

P.L.

unread,
Apr 28, 2010, 4:27:59 AM4/28/10
to
"\r" = chr(13)
"\n" = chr(10)
"\t" = chr(9)

Dne 28.4.2010 10:09, stevo napsal(a):

0 new messages