Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule krok po kroku przedstawiono sposób tworzenia i używania wyrażeń regularnych w celu określenia, czy ciągi są zgodne z określonymi wzorcami.
Oryginalna wersja produktu: Visual C#
Oryginalny numer KB: 308252
Podsumowanie
Wyrażenia regularne umożliwiają łatwe analizowanie i dopasowywanie ciągów do określonego wzorca. Korzystając z obiektów dostępnych w RegularExpressions przestrzeni nazw, można porównać ciąg z danym wzorcem, zastąpić wzorzec ciągu innym ciągiem lub pobrać tylko fragmenty sformatowanego ciągu. W tym przykładzie utworzymy wzorzec weryfikacji adresu e-mail. W tym artykule odwołuje się do przestrzeni System.Text.RegularExpressionsnazw biblioteki klas programu Microsoft .NET Framework.
Wymagania
W tym artykule założono, że znasz następujące tematy:
- Visual C#
- Składnia wyrażeń regularnych
Dopasowywanie wzorca za pomocą wyrażeń regularnych
Uruchom program Visual C#.
Utwórz nową aplikację konsolową Visual C#.
Określ słowo kluczowe using w
Text.RegularExpressionsprzestrzeni nazw, aby nie trzeba było kwalifikować deklaracji w tych przestrzeniach nazw w dalszej części kodu. Przed wszelkimi innymi deklaracjami należy użyć instrukcji using:using System.Text.RegularExpressions;Zdefiniuj nowe wyrażenie regularne, które będzie używać dopasowania wzorca do weryfikowania adresu e-mail. Następujące wyrażenie regularne jest ustrukturyzowane w celu wykonania trzech czynności:
- Przechwyć podciąg przed symbolem
@i umieść go wusergrupie. - Przechwyć podciąg po symbolu
@i umieść go whostgrupie. - Upewnij się, że pierwsza połowa ciągu nie ma symbolu
@.
Regex emailregex = new Regex("(?<user>[^@]+)@(?<host>.+)");- Przechwyć podciąg przed symbolem
Zdefiniuj nowy ciąg zawierający prawidłowy adres e-mail. Zapewnia to wartość domyślną, jeśli argument wiersza polecenia metody jest pusty:
String s = "johndoe@tempuri.org";Sprawdź, czy istnieją jakieś parametry wiersza polecenia; jeśli istnieją, pobierz pierwszy parametr i przypisz go do zmiennej
s.if (args.Length > 0) { s = args[0]; }MatchUżyj metody , aby przekazać zmienną adresu e-mail i zwrócić nowyMatchobiekt. ObiektMatchzwróci niezależnie od tego, czy w ciągu źródłowym znaleziono jakiekolwiek dopasowania.Match m = emailregex.Match(s);Sprawdzając
Successwłaściwość, możemy zdecydować, czy kontynuować przetwarzanieMatchobiektu, czy wyświetlić komunikat o błędzie. W przypadku pomyślnegouserwyświetlenia grup nazwanych ihostwGroupskolekcjiMatchobiektu.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 ();Aby okno konsoli było otwarte po uruchomieniu aplikacji, dodaj następujące wiersze kodu:
System.Console.WriteLine("Press Enter to Continue..."); System.Console.ReadLine();Skompiluj projekt.
Aby uruchomić aplikację w środowisku programistycznym przy użyciu domyślnego adresu e-mail określonego w kodzie, naciśnij F5 lub wybierz pozycję Start z menu Debugowanie . Aby uruchomić aplikację przy użyciu argumentu wiersza polecenia, dostępne są trzy opcje:
- W menu Projekt kliknij pozycję Właściwości, a następnie kliknij pozycję Debuguj. W sekcji Opcje uruchamiania w okienku po prawej stronie określ adres e-mail, który chcesz przetestować. Naciśnij F5 lub kliknij przycisk Start w menu Debugowanie , aby uruchomić aplikację.
- Uruchom okno polecenia i przejdź do folderu bin lub debugowania w folderze, w którym znajduje się projekt. Następnie wpisz nazwę pliku wykonywalnego, a następnie adres e-mail, który chcesz przetestować.
- Znajdź plik wykonywalny dla tego projektu i przeciągnij go do menu Start... Uruchom okno na pasku zadań. Dodaj adres e-mail, aby zweryfikować, a następnie kliknij przycisk OK.