Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [java] replaceAll non mi funziona

    Ciao a tutti,
    ho già fatto delle ricerche sul forum ma senza successo.
    Mi sono scritto un metodo per cambiare tutti quei caratteri un pò "pericolosi" in entità in modo da evitare problemi di apici, etc.
    codice:
    try{
    			//change dangerous values in character entities
    			values.replaceAll("\"", """);
    			values.replaceAll("\'", "'");
    			values.replaceAll("<", "&#60;");
    			values.replaceAll(">", "&#62;");
    			values.replaceAll("@", "&#64;");
    			values.replaceAll("`", "&#96;");
    			values.replaceAll("‘", "‘");
    			values.replaceAll("’", "’");
    			values.replaceAll("“", "“");
    			values.replaceAll("”", "”");
    			values.replaceAll("‹", "‹");
    			values.replaceAll("›", "›");
    			values.replaceAll("´", "&#180;");
    			return values;
    		}catch(PatternSyntaxException ex){
    Probabilmente non riuscite a vedere le entità perchè vengono automaticamente interpretate dal browser (per chi interessa,nel visualizza codice si vedono chiaramente , ex. & # 3 4
    Il mio problema è che nella stringa che provo a passare non viene sostituito un bel niente. Non va in errore ma non cambia i caratteri che li chiedo. Allora mi viene il dubbio che non trovi il carattere che li chiedo di sostituire, forse un errore di regex. Non ne sono pratico quindi non posso dirlo.
    Fatemi sapere.
    Ciao

  2. #2
    1) il metodo replaceAll riturna una String, che è il risultato della ReplaceAll.... se tu con il ritorno della replaceAll non ci fai niente, allora è come se non l'avessi fatta...

    devi fare String risultato = stringa.replaceAll("x","y");

    puoi anche concatenarli..

    stringa = stringa.replaceAll("x","y")
    .replaceAll("z","v")
    .replaceAll("b","q");


    ecc.ecc.

    2) Devi tenere conto del fatto che replacEAll acectta come pattern una RegExp, quindi determinatio caratteri li devi escapare, come il <, il >.. ecc.ecc.
    Ci sono cose che non si possono sapere. Per tutto il resto c'è man

    Prima di fare domande stupide: 1) googla 2) leggi le manpages 3) sparati.

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.