..


Linki sponsorowane

Wyrażenia regularne w C #

Artykuł napisany przez Vincent Gaglio
Strona 1 z 4

Bardzo często programiści są w stanie konieczności analizowania ciągów znaków. Typowym przykładem jest podczas przetwarzania tekstu wpisanego przez użytkownika do wyszukiwarki - a ostatecznie wyeliminować - niektóre znaki.
Aby uprościć ten i inne rodzaje działalności, wydają się być bardzo przydatne tzw wyrażeń regularnych.

Wyrażenie regularne składa się z "model abstrakcyjnego" łańcucha, który jest używany do porównań w celu sprawdzenia, czy w porównaniu ciąg spełnia pewnych wymogów formatowania. To może także używać wyrażeń regularnych do wyciągu lub wymienić części tekstu.

Zobaczmy przykład ma pokazać, jak te wyrażenia. Korzystanie z Visual Studio Tworzymy prostą aplikację konsoli (co nazywamy TestRegExp), które zajmuje dwa obiekty typu string jako wejście i określa, czy pierwszy z nich (wyrażenie regularne) pasuje na sekundę lub mniej. Powinny być zawarte w przestrzeni nazw System.Text.RegularExpressions i dokonać porównania przy użyciu statycznej System.Text.RegularExpressions.Regex.IsMatch






 przy System.Text.RegularExpressions;

 





 nazw TestRegExp

 





 {

 





 ClasseTest klasy

 





 {

 





 static void Main (string [] args)

 





 {

 





 if (Regex.IsMatch (args [1], args [0]))

 





 Console.WriteLine ("wejście w zestawie format.");

 





 więcej

 





 Console.WriteLine ("Dane wejściowe nie przestrzega określonego formatu .");}}}



W tym momencie wykonujemy wniosku jako pierwszy parametr i przekazać wyrażenie regularne "^ \ d {5} $" (wkrótce zobaczymy rozumieniu pytania symboli) i drugi w postaci "1234" lub "12345". Wyjście z aplikacji w przypadku ciąg "1234" powinno być "wejścia nie przestrzega określonego formatu." Podczas gdy w przypadku "12345" wejście w zestawie format. "






 C: \> TestRegExp ^ \ d {5} 1234 dolar

 





 Wejście nie respektuje określony format.

 







 C: \> TestRegExp ^ \ d {5} 12.345 dolarów

 





 Wejście w zestawie format.



To dlatego, jak już zrozumiał, IsMatch metoda porównuje wyrażenie regularne z łańcucha i zwraca wartość logiczną true, jeśli format jest podyktowany po raz pierwszy zaobserwowane w drugim, w przeciwnym wypadku false. W powyższym przykładzie wyrażenie regularne "^ \ d {5} $" oznacza, że ​​ciąg do oceny muszą być dokładnie 5 numerów (w rzeczywistości, w porównaniu z "1234" zwraca false).

W szczególności znak "^" oznacza początek ciągu znaków "\ d" oznacza, że ​​znaki muszą być numeryczne, "{5}" oznacza długość łańcucha i "$" oznacza koniec łańcucha. Jeśli usunąć znak "^" znaczenie wyrażeń regularnych zmieni głęboko. W rzeczywistości wyrażenie \ d {5} $ zawsze wymaga obecności pięciu liczb w kolejności, ale także potwierdzić ciąg "abcd12345" lub "ciaociao12345", ponieważ jego znaczenie jest "string, która kończy się z pięciu kolejnych numerów".

Dobrą regułą jest zawsze stawiamy znak "^" na początku wyrażenia regularnego, a znak "$" na końcu. Taki układ zapewnia, że ​​wejście musi odpowiadać dokładnie wyrażenie regularne, a nie tylko zawierać zgodne z tymi samymi znakami.

W tej samej kategorii ...
E-Learning
CSS (Kurs) CSS (Kurs)
Web Design i dostępności zgodnie z W3C CSS i XHTML. Począwszy od 29 €.
Ruby i Ruby on Rails (Kurs) Ruby i Ruby on Rails (Kurs)
Tworzenie oprogramowania i aplikacji webowych w języku Ruby RoR. Od 39 €.
Visual Basic 6 (Kurs) Visual Basic 6 (Kurs)
Dodać Aplikacje biurowe z VB6. Od 39 €.
Linki sponsorowane