Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Poker1
    Registrato dal
    Jul 2002
    Messaggi
    479

    Espressione regolare per riconoscere COM1

    Ciao a tutti,
    dovrei riconoscere se la stringa passata ad una funzione è relativa a una porta COM, ad esempio COM1, COM2 etc...

    ho fatto la seguente funzione

    codice:
    boolean corretta( String com ) {
       if( Pattern.matches("COM\\d", com ) )
          return true;
       else
          return false;
    }
    però non funziona.. ho sbagliato a scrivere l'espressione regolare?
    Io voglio appunto riconoscere che la stringa passata sia della forma COM{numero}
    Non riscrivere la ruota, usa le librerie.
    by Bjarne Stroustrup
    EIDON SOFT MEMBER

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

    Re: Espressione regolare per riconoscere COM1

    Originariamente inviato da Poker1
    codice:
    boolean corretta( String com ) {
       if( Pattern.matches("COM\\d", com ) )
          return true;
       else
          return false;
    }
    però non funziona.. ho sbagliato a scrivere l'espressione regolare?
    La espressione regolare in sé è corretta. Corrisponde ad esempio a "COM1" o "COM3" ma NON ad esempio a "com2" (minuscolo) o " COM2 " (whitespace in generale a fianco o altro).

    P.S. Nota che il modo più semplice è invocare matches sul String com.
    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 L'avatar di Poker1
    Registrato dal
    Jul 2002
    Messaggi
    479
    ho modificato con:
    address.matches("COM\\d")

    dove address è la mia stringa contenente la parola COM1... ma ancora non mi entra dentro l'if.. bho..
    Non riscrivere la ruota, usa le librerie.
    by Bjarne Stroustrup
    EIDON SOFT MEMBER

  4. #4
    Utente di HTML.it L'avatar di Poker1
    Registrato dal
    Jul 2002
    Messaggi
    479
    funziona..errore mio..
    Non riscrivere la ruota, usa le librerie.
    by Bjarne Stroustrup
    EIDON SOFT MEMBER

  5. #5
    Originariamente inviato da Poker1
    ho modificato con:
    address.matches("COM\\d")

    dove address è la mia stringa contenente la parola COM1... ma ancora non mi entra dentro l'if.. bho..
    Devi verificare anche se address è "com". Le stringhe, come ogni cosa in Java, sono case-sensitive.

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.