Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    724

    [JAVA] sostituire \ con \\

    devo sostituire in un percorso \ con \\ ma nn trovo niente per rappresentare \. come posso fare???

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    usa / , non ci sono problemi sui diversi OS (almeno io non ne ho avuti)
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    724
    usa /
    non posso perchèottengo il percorso da un filechooser ed è costruito con \. per sostituire volevo utilizzare il metodo replaceall() ma \ nn riesco a identificarlo...

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da perzem
    non posso perchèottengo il percorso da un filechooser ed è costruito con \. per sostituire volevo utilizzare il metodo replaceall() ma \ nn riesco a identificarlo...
    codice:
    String out = path.replaceAll ("\\\\", "\\\\\\\\");
    Non spaventarti per i tanti \. È giusto.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da andbin
    codice:
    String out = path.replaceAll ("\\\\", "\\\\\\\\");
    Non spaventarti per i tanti \. È giusto.
    perche' cosi' tanti??
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Alex'87
    perche' cosi' tanti??
    Perché bisogna tenere conto di 2 cose:

    1) Nelle espressioni regolari il backslash "\" è un carattere speciale. Se si vuole matchare proprio quello bisogna mettere nella espressione "\\".

    2) Dal momento che la espressione regolare è stata messa dentro una stringa "letterale" nel sorgente, bisogna ulteriormente effettuare l'escape di \ perché nei sorgenti è di nuovo un carattere speciale.

    Da qui si evince che per matchare un singolo "\", nel sorgente bisogna mettere la stringa "\\\\" (e il doppio per sostituirlo con 2 "\" ).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da andbin
    Perché bisogna tenere conto di 2 cose:

    1) Nelle espressioni regolari il backslash "\" è un carattere speciale. Se si vuole matchare proprio quello bisogna mettere nella espressione "\\".

    2) Dal momento che la espressione regolare è stata messa dentro una stringa "letterale" nel sorgente, bisogna ulteriormente effettuare l'escape di \ perché nei sorgenti è di nuovo un carattere speciale.

    Da qui si evince che per matchare un singolo "\", nel sorgente bisogna mettere la stringa "\\\\" (e il doppio per sostituirlo con 2 "\" ).
    che casino...
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

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 © 2025 vBulletin Solutions, Inc. All rights reserved.