Condividi tramite


Trovare una corrispondenza con un criterio usando Visual C# ed espressioni regolari

Questo articolo dettagliato illustra come creare e usare espressioni regolari per determinare se le stringhe corrispondono a determinati modelli.

Versione originale del prodotto: Visual C#
Numero KB originale: 308252

Riepilogo

Le espressioni regolari consentono di analizzare e associare facilmente le stringhe a un criterio specifico. Usando gli oggetti disponibili nello spazio dei RegularExpressions nomi, è possibile confrontare una stringa con un determinato criterio, sostituire un modello di stringa con un'altra stringa o recuperare solo parti di una stringa formattata. In questo esempio verrà creato un modello per convalidare un indirizzo di posta elettronica. Questo articolo fa riferimento allo spazio dei nomi System.Text.RegularExpressionsdella libreria di classi di Microsoft .NET Framework.

Requisiti

Questo articolo presuppone che l'utente abbia familiarità con gli argomenti seguenti:

  • Visual C#
  • Sintassi delle espressioni regolari

Usare espressioni regolari per trovare una corrispondenza con un criterio

  1. Avviare Visual C#.

  2. Creare una nuova applicazione console Visual C#.

  3. Specificare la parola chiave using nello Text.RegularExpressions spazio dei nomi in modo che non sia necessario qualificare le dichiarazioni in tali spazi dei nomi in un secondo momento nel codice. L'istruzione using deve essere usata prima di qualsiasi altra dichiarazione:

    using System.Text.RegularExpressions;
    
  4. Definire una nuova espressione regolare che userà una corrispondenza del criterio per convalidare un indirizzo di posta elettronica. L'espressione regolare seguente è strutturata per eseguire tre operazioni:

    1. Acquisire la sottostringa prima del @ simbolo e inserirla nel user gruppo.
    2. Acquisire la sottostringa dopo il @ simbolo e inserirla nel host gruppo.
    3. Assicurarsi che la prima metà della stringa non abbia un @ simbolo.
    Regex emailregex = new Regex("(?<user>[^@]+)@(?<host>.+)");
    
  5. Definire una nuova stringa contenente un indirizzo di posta elettronica valido. In questo modo viene fornito un valore predefinito se l'argomento della riga di comando del metodo è vuoto:

    String s = "johndoe@tempuri.org";
    
  6. Controllare se sono presenti parametri della riga di comando; se sono presenti, recuperare il primo parametro e assegnarlo alla variabile s.

    if (args.Length > 0) {
        s = args[0];
    }
    
  7. Utilizzare il Match metodo per passare la variabile di indirizzo di posta elettronica e restituire un nuovo Match oggetto. L'oggetto Match restituirà indipendentemente dal fatto che nella stringa di origine siano state trovate corrispondenze.

    Match m = emailregex.Match(s);
    
  8. Esaminando la Success proprietà, è possibile decidere se continuare a elaborare l'oggetto Match o stampare un messaggio di errore. In caso di esito positivo, visualizzare i user gruppi denominati e host all'interno dell'insieme Groups dell'oggetto Match .

    if (m.Success)
    {
        Console.WriteLine ("User: " + m.Groups["user"].Value);
        Console.WriteLine ("Host: " + m.Groups["host"].Value);
    }
    else
    {
        Console.WriteLine (s + " is not a valid email address");
    }
    Console.WriteLine ();
    
  9. Per mantenere aperta la finestra della console dopo l'esecuzione dell'applicazione, aggiungere le righe di codice seguenti:

    System.Console.WriteLine("Press Enter to Continue...");
    System.Console.ReadLine();
    
  10. Crea il progetto.

  11. Per eseguire l'applicazione nell'ambiente di sviluppo usando l'indirizzo di posta elettronica predefinito specificato nel codice, premere F5 o scegliere Avvia dal menu Debug . Per avviare l'applicazione con un argomento della riga di comando, sono disponibili tre opzioni:

    • Scegliere Proprietà dal menu Progetto e quindi fare clic su Debug. Nella sezione Opzioni di avvio nel riquadro destro specificare l'indirizzo di posta elettronica da testare. Premere F5 oppure fare clic su Avvia dal menu Debug per eseguire l'applicazione.
    • Avviare una finestra di comando e passare alla cartella bin o debug nella cartella in cui risiede il progetto. Digitare quindi il nome del file eseguibile seguito dall'indirizzo di posta elettronica che si desidera testare.
    • Individuare il file eseguibile per questo progetto e trascinarlo nella schermata Start... Eseguire la finestra sulla barra delle applicazioni. Aggiungere l'indirizzo di posta elettronica per verificare e fare clic su OK.

Riferimenti