Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Escape di caratteri...

  1. #1

    Escape di caratteri...

    Devo scrivere come contenuto di un tag xml un url che contiene dei parametri... cioè una querystring, parametri concatenati dalla classica &

    ossia:
    <link>http://www.miodominio.it?param1=pippo&param2=pluto</link>
    se scrivo così mi da un errore il parser relativamente al carattere '&'

    se lo sostiruico con &amp;
    il parser non si lamenta... ma il valore del mio tag contiene quei caratterri...
    <link>http://www.miodominio.it?param1=pippo&amp;param2=pluto</link>
    ergo il link non funziona...

    come faccio a mantenere la stringa originale senza far scelare il parser?
    ho tentato con il classico \ di escape ma evidentemente in xml non funge...

    cosa devo fare??

    grazie
    Cristiano

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Certo che non e` facile capire quello che scrivi.
    Riscrivo quanto da te riportato, inserendo uno spazio dopo la & in modo da capire quello che vuoi dire (senza farlo interpretare dal forum):

    <link>http://www.miodominio.it?param1=pippo& param2=pluto</link>

    <link>http://www.miodominio.it?param1=pippo& amp;param2=pluto</link>

    Hai provato a fare un escape di tutta la stringa?

    var str1 = "http://www.miodominio.it?param1=pippo& param2=pluto";
    var str2 = escape(str1);
    document.write("<link>"+str2+"\<\/link>");

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3

    ci riprovo...

    io devo scrivere un tag come questo:


    codice:
    <link>http://www.miodominio.it?param1=pippo&amp;param2=pluto</link>

    non uso il js per genare il mio file xml...

    mi puoi suggerire come fare l'escpae del carattere &amp;?
    senza passare da alcuna funzione legata a qualche linguaggio??
    Cristiano

  4. #4

  5. #5

    non posso sostituire il carattere...

    non posso sostituire il carattere... se uso & amp; questo sarà il valore che il valore del tag...

    devo fare in modo che il parser non scleri... ossia dovrei farne l'escape qualcosa di simile a quello che si fa in js \<carattere da non considerare>... ma non so come questo si faccia in xml...
    Cristiano

  6. #6

    Re: ci riprovo...

    Originariamente inviato da Cris.d
    io devo scrivere un tag come questo:



    non uso il js per genare il mio file xml...

    mi puoi suggerire come fare l'escpae del carattere &amp;?
    senza passare da alcuna funzione legata a qualche linguaggio??
    scusa, ma come generi il file XML?

    dotty78!
    My space! Voglio Arthur!!!
    Ho fatto strike!!!
    dotty78

    Prima di postare in “XML, XSL, Smil” dai uno sguardo ai Link utili!

  7. #7

    ...sarà un problema mio?!?

    perchè non cerchi di rispondere alla mia domanda anzichè pormene un'altra??

    ora sto facendo delle prove a mano poi penso utilizzerò o il C# o il php...

    ora sto cercando di capire come risolvere il problema della & e del suo escape in xml... se sai come fare questo ti sarei grato se me lo spiegassi...
    Cristiano

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188

    Re: ...sarà un problema mio?!?

    Originariamente inviato da Cris.d
    perchè non cerchi di rispondere alla mia domanda anzichè pormene un'altra??
    Qui siamo una comunita` di sviluppatori, non dei teorici di codici (anche se qualcuno che mastica un po' di teoria c'e`).

    In generale quando non si riesce a dare una risposta specifica e puntuale ad un problema , si cerca di girarci attorno e di trovare qualche scappatoia.
    Per la mia esperienza un buon 30% delle domande che vengono fatte sui vari forum che frequento, non hanno una risposta diretta, ma la soluzione e` stata trovata aggirando il problema.

    Quindi la domanda di dotty (per come la capisco io) e` tesa a trovare una soluzione alternativa, non ad inquisire sul come stai lavorando tu: sapere come arrivi a quel codice puo` (forse) aiutarla a trovare una soluzione.

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  9. #9
    Se pongo qualche domanda, come ha affermato Mich_, un motivo c'è.

    Te l'ho chiesto perché per realizzare l'escape del carattere & devi realizzare un parser.

    Per fare questo devi utilizzare ad esempio YACC (Yet Another Compiler of Compiler).

    Yacc costruisce uno strumento generale per imporre strutture all'ingresso di un programma. L'utente Yacc prepara una specifica del processo di lettura degli ingressi; questo include regole descriventi la struttura dell'ingresso, il codice da richiamare quando si riconoscono sottoinsieme derivato dalle singole regole, ed una routine a basso livello per l'ingresso. Yacc quindi genera una funzione per controllare il trattamento dell'ingresso. Questa funzione, chiamata parser (o analizzatore sintattico) chiama la routine a basso livello fornita dall'utente (l'analizzatore lessicale) per identificare gli elementi di base (chiamati token) nella sequenza dell'ingresso. Questi token sono organizzati secondo le regole di struttura dell'ingresso, chiamate regole grammaticali; quando una di queste regole è usata per ridurre l'ingresso, allora viene invocato il codice utente relativo alla regola, cioè un'azione; le azioni hanno la possibilità di restituire valori e di far uso dei valori di altre azioni.

    Yacc è scritto in C(1) portabile e le azioni e le subroutine di uscita sono pure quelle in C. Per di più, molte convenzioni della sintassi seguono il C.
    Quello che ho riportato nel quote è solo l'inizio di un breve trattato che ho trovato in rete su YACC.Ti consiglio di leggerlo.

    Per risolvere il tuo problema devi realizzare un opportuno analizzatore lessicale.

    dotty78!
    My space! Voglio Arthur!!!
    Ho fatto strike!!!
    dotty78

    Prima di postare in “XML, XSL, Smil” dai uno sguardo ai Link utili!

  10. #10

    ringrazio e mi scuso...

    Vi ringrazio e mi scuso di avervi altarati... certo è che sieti "permalosi" ...

    in sostanza, tornando al mio quesito, l'unico modo per risolvere il mio problema è dare in pasto la stringa che voglio far scrivere tra due tag xml ad una funzione di escape propria dl linguaggio che deciderò di adottare per scrivere il mio file xml?

    ciao e grazie...
    Cristiano

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.