Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Espressioni regolari

  1. #1

    Espressioni regolari

    Ciao a tutti,
    un piccolo consiglio.
    Mi servirebbe formattare una stringa in modo da levare tutte le parole all'interno dei singoli apici.
    Esempio:
    Originale: SELECT * FROM FOLDERLOAD WHERE TIPOLOGIA = 'CUF' AND DATA_RIF = '2009-10-13'
    Obiettivo: SELECT * FROM FOLDERLOAD WHERE TIPOLOGIA = AND DATA_RIF =

    Con il metodo replaceAll di String potrei usare le espressioni regolari...
    Che espressione potrei usare??

    THK

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Espressioni regolari

    Originariamente inviato da wildchild82
    Mi servirebbe formattare una stringa in modo da levare tutte le parole all'interno dei singoli apici.

    Con il metodo replaceAll di String potrei usare le espressioni regolari...
    Che espressione potrei usare??
    str.replaceAll("'.*?'", "")

    oppure

    str.replaceAll("'[^']*'", "")

    Ai fini del risultato finale non c'è differenza.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Perfetto grazie tutto risolto

  4. #4
    E se invece volessi effettuare questa conversione....

    Tutto quello compreso tra parentesi (abc) convertito in (), parentesi comprese??

    Thk

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da wildchild82
    Tutto quello compreso tra parentesi (abc) convertito in (), parentesi comprese??
    Le parentesi tonde sono caratteri speciali nelle regex.
    Quindi basta farne l'escape e in modo simile alle regex che ho postato:

    replaceAll("\\(.*?\\)", "()")

    oppure

    replaceAll("\\([^(]*\\)", "()")
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Perfetto thk

    Quindi per le espressioni regolari il carattere escape equivale alla doppia \

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da wildchild82
    Perfetto thk

    Quindi per le espressioni regolari il carattere escape equivale alla doppia \
    No. Il fatto è che il \ è "speciale" sia nelle regex sia nelle stringhe literal.

    Prima pensa alla regex. Ad esempio "uno o più digit" che è \d+
    Poi devi metterlo in una stringa "literal"?? Allora fai ancora l'escape di \ quindi "\\d+".
    Se la regex dovessi leggerla da un file di testo o digitarla in un text field dovrebbe contenere solo \d+ (3 caratteri).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.