Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem sa "Veci od" "Manji od" znakovima

[es] :: .NET :: Problem sa "Veci od" "Manji od" znakovima

[ Pregleda: 2844 | Odgovora: 14 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Rockovic
Sweden

Član broj: 122797
Poruke: 58
*.psmobil.se.



Profil

icon Problem sa "Veci od" "Manji od" znakovima03.12.2007. u 07:53 - pre 198 meseci
Trebao bih da zamenim sve pojave znakova "<" ">" u textu sa "&lt;" i "&gt;". Problem je sto sve pojave "<b/>" i "<b>neki text</b>" tagova moraju ostati kakvi jesu. Oni bi trebali da formatiraju text kako vec i rade - <br/> kao novi red a <b>Bold</b>.

Znaci "nesto je < od neceg" bi treblo da mi izgleda u textu: "nesto je &lt od neceg" ali "<b>Naslov</b>" bi trebao da bude formatiran kako i sledi: Naslov

Imate li mozda neki slican RegExp pattern pri ruci?

Hvala u napred!
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima03.12.2007. u 08:16 - pre 198 meseci
Imaš samo B tagove ili još neke?
 
Odgovor na temu

Rockovic
Sweden

Član broj: 122797
Poruke: 58
*.psmobil.se.



Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima03.12.2007. u 09:27 - pre 198 meseci
U pitanju su samo <b>, <br> i <br/>

Kad bih mogao nekako zameniti sve < ili > sa "&lt;" i "&gt;" a da nisu u sklopu <b>, </b> i <br/>. Kako samo zvuci jednostavno kad covek ovako formulise =)...

Znaci (pseudokod): Replace sve "<" ili ">" sa "&lg;" ili "&gt;" ALI da nisu u pitanju "<b>,</b>,<br/>,<br>"



[Ovu poruku je menjao Rockovic dana 03.12.2007. u 10:45 GMT+1]
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima03.12.2007. u 09:58 - pre 198 meseci
Evo kako bih ja uradio, verovatno postoji efikasnije rešenje:
Ovo je search pattern:
Code:
(</?b>)|(<br/?>)|(<|>)

Za replacement napravi MatchEvaluator delegat koji će da vraća prvu i drugu match grupu neizmenjene, a treću HTTP encoduje ako je pronađena.

http://msdn2.microsoft.com/en-us/library/cft8645c(VS.80).aspx
 
Odgovor na temu

Rockovic
Sweden

Član broj: 122797
Poruke: 58
*.bredband.comhem.se.



Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima03.12.2007. u 19:05 - pre 198 meseci
Nisam imao prilike da pogledam odgovore ranije. @jablan, moram priznati da nisam bas razumeo tvoj predlog. Problem je sto bi korisnik mogao napisati i "3<4" ali i "3 < 4". Cini mi se da tvoj primer ne uzima taj slucaj u obzir... ili?
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima03.12.2007. u 21:11 - pre 198 meseci
Koji slučaj? Nema veze da li ima spejsove okolo, pattern koji sam ti predložio jednostavno ignoriše spejsove.

Probaj da napraviš ovako kako sam ti rekao. Ili mi sredi švedsku vizu, pa ću ja da ti napravim... ;)
 
Odgovor na temu

Rockovic
Sweden

Član broj: 122797
Poruke: 58
*.bredband.comhem.se.



Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima03.12.2007. u 22:26 - pre 198 meseci
Nemam kuci VS tako da sam radio sa asp.net u vb-u. u Visual Web Developer-u. Jos nisam testirao kako treba tako da nisam bas siguran da li je skroz ok. Ovako na brzinu mi se cini da je to to sto mi treba.

Bio bih zahvalan ako i neko od vas iskusnijih testira pattern.



Code:

   Protected Overrides Sub OnLoad(ByVal e As System.EventArgs)
      MyBase.OnLoad(e)

      Dim text As String = "<b>Debeli</b> < text > <br/>novi red <br />novi red < <check <b>Debeli</b>"

      Dim rxLt As New Regex("(\s?<[^b(br)/<>]\s?)|(\s?[^b(br)/<>]>\s?)")
      Dim result As String = rxLt.Replace(text, AddressOf CorrectLessGreaterThenChar)

      Response.Write(result)

   End Sub

   Function CorrectLessGreaterThenChar(ByVal m As Match) As String
      Dim x As String = m.ToString()
      Dim s As New String("")

      If x.IndexOf(">") > -1 Then
         s = x.Replace(">", "&gt;")
      ElseIf x.IndexOf("<") > -1 Then
         s = x.Replace("<", "&lt;")
      ElseIf s = "" Then
         s = x
      End If

      Return s
   End Function
 
Odgovor na temu

Rockovic
Sweden

Član broj: 122797
Poruke: 58
*.bredband.comhem.se.



Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima03.12.2007. u 22:32 - pre 198 meseci
Kasno videh ovo za vizu... Da dobijes vizu ovde su otprilike verovatne kao i recimo mogucnest da budes zet svedskom kralju...
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima04.12.2007. u 08:14 - pre 198 meseci
Ne valja ti pattern. Ne znam zašto jer ne kapiram šta si hteo, ali definitivno ne nalazi sve što treba.

Probaj ovako kako sam ti ja rekao, ili sačekaj do večeras, okačiću kod. Preživeću i bez švedske vize... :P
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6041



+4631 Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima04.12.2007. u 11:05 - pre 198 meseci
A sto jednostavno ne probas sa HttpUtility.HtmlEncode(string)?

Ako se ne varam (ne mogu da proverim trenutno) HttpUtility.HtmlEncode("<b> vidi ovo <= vidi ono</b>"); bi trbalo da vrati "<b> vidi ovo &lt;= vidi ono</b>"

PS A to za zeta svedskog kralja, to zavisi od toga kak'a mu cera
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima04.12.2007. u 12:07 - pre 198 meseci
Citat:
mmix: A sto jednostavno ne probas sa HttpUtility.HtmlEncode(string)?

Nope, ta metoda ne zna za pojam tagova, enkoduje sve redom.

Ok, evo ga rešenje na tacni:
Code:
using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;
using System.Web;

namespace ConsoleApplication5
{
    class Program
    {
        static string ME(Match m)
        {
            if (m.Groups[3].Value != "")
                return HttpUtility.HtmlEncode(m.Value);
            return m.Value;
        }

        static void Main(string[] args)
        {
            string s = "asdf SAD<F asdf AS>Df asdf asdF< ASdf asdf<br> safd aDF< sadf</b> sd FASDF asD<F asdf<br/> >SAdf asdf as";
            Regex re = new Regex("(</?b>)|(<br/?>)|(<|>)");
            string r = re.Replace(s, new MatchEvaluator(ME));
            Console.WriteLine(r);
        }
    }
}
 
Odgovor na temu

Rockovic
Sweden

Član broj: 122797
Poruke: 58
*.bredband.comhem.se.



Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima04.12.2007. u 18:02 - pre 198 meseci
Jos jednom hvala na vasem vremenu i trudu.

@jablan, probacu code cim stignem! Da @mmix, na htmlencode sam i ja pomisljao...

Nego, gde @jablane vidis gresku u kodu koji sam ja poslao. Meni je nalazilo (zamenjivalo) sinoc bas ono sto mi treba. Doduse (kako rekoh) nisam bas pazljivo testirao ali cini mi se ok...

@mmix sto se tice princeze (ovde sam pre svega mislio na mladju) ona bi mogla definitivno proci kao one iz bajke sto celu situaciju cini jos komplikovanijom...

Evo ovde su obadve mada ova o kojoj ja pisem je prva sa leva...

 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima04.12.2007. u 19:34 - pre 198 meseci
Citat:
Rockovic: Nego, gde @jablane vidis gresku u kodu koji sam ja poslao. Meni je nalazilo (zamenjivalo) sinoc bas ono sto mi treba. Doduse (kako rekoh) nisam bas pazljivo testirao ali cini mi se ok...

Nisam se udubljivao u kod, previše mi je komplikovano a ne troši mi se mozak zabadava ;), probao sam na par primera i video da ne nalazi sve znakove. Najprostije, probaj na stringu "<", videćeš da ga pattern neće pronaći.
 
Odgovor na temu

Rockovic
Sweden

Član broj: 122797
Poruke: 58
*.bredband.comhem.se.



Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima04.12.2007. u 19:41 - pre 198 meseci
@jablan, moj kod menja sve pojave "<" ili ">" u test stringu ako nisu u sklopu <br>, <br /> ili <b></b>... Dakle sve u test-string-u u metodi kod uspesno zameni... npr. <check < text >... "<" mi je i bilo jednostavno testirati... Zato mi nije jasno na koje slucajeve mislis.
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Problem sa "Veci od" "Manji od" znakovima04.12.2007. u 20:20 - pre 198 meseci
Ne razumem te, a izgleda ni ti mene... Ako ti tvoj kod radi posao, koristi ga. :)
 
Odgovor na temu

[es] :: .NET :: Problem sa "Veci od" "Manji od" znakovima

[ Pregleda: 2844 | Odgovora: 14 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.