Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    34

    RegExp - Dividere spazi non contenuti in apici

    Ciao a tutti,

    Ho un problema con le espressioni regolari... non sono molto forte in questo, quindi chiedo aiuto a qualcuno messo meglio di me.

    Io ho delle stringhe fatte in questo modo: nome="valore" nome2="valore2" ecc...
    Devo dividere i vari assegnamenti, e l'idea era quella di splittare per spazi ed ottenere gli assegnamenti singoli, solo che a volte i valori degli assegnamenti possono contenere spazi, e questo mi crea seri problemi. Ad esempio la stringa:

    pippo="ciao" paperino="che bello il sole" mi verrebbe tagliata in [pippo="ciao",paperino="che,bello,il,sole"] e invece doveva essere [pippo="ciao",paperino="che bello il sole"]

    Qualcuno ha idea di che espressione regolare posso utilizzare per dire di suddividere solo gli spazi non contenuti in apici?

    thx.

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Esempio:
    codice:
    import java.util.regex.*;
    
    public class Prova
    {
        public static void main (String[] args)
        {
            String str = "nome=\"valore\" nome2=\"valore2\"";
    
            Pattern p = Pattern.compile ("(\\w+)=\"(.*?)\"");
            Matcher m = p.matcher (str);
    
            while (m.find ())
                System.out.println (m.group(1) + "    " + m.group(2));
        }
    }
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    34
    Grazie.

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.