Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

C# - Reguläre Ausdrücke

Ein regulärer Ausdruck ist ein Muster, das mit einem Eingabetext abgeglichen werden könnte. Das .Net-Framework bietet eine Engine für reguläre Ausdrücke, die einen solchen Abgleich ermöglicht. Ein Muster besteht aus einem oder mehreren Zeichenliteralen, Operatoren oder Konstrukten.

Konstrukte zur Definition regulärer Ausdrücke

Es gibt verschiedene Kategorien von Zeichen, Operatoren und Konstrukten, mit denen Sie reguläre Ausdrücke definieren können. Klicken Sie auf die folgenden Links, um diese Konstrukte zu finden.

Die Regex-Klasse

Die Regex-Klasse wird zur Darstellung eines regulären Ausdrucks verwendet. Es hat die folgenden häufig verwendeten Methoden −

Sr.No. Methoden &Beschreibung
1

public bool IsMatch(string input)

Gibt an, ob der im Regex-Konstruktor angegebene reguläre Ausdruck eine Übereinstimmung in einer angegebenen Eingabezeichenfolge findet.

2

public bool IsMatch(string input, int startat)

Gibt an, ob der im Regex-Konstruktor angegebene reguläre Ausdruck eine Übereinstimmung in der angegebenen Eingabezeichenfolge findet, beginnend an der angegebenen Anfangsposition in der Zeichenfolge.

3

public static bool IsMatch(string input, string pattern)

Gibt an, ob der angegebene reguläre Ausdruck eine Übereinstimmung in der angegebenen Eingabezeichenfolge findet.

4

öffentliche MatchCollection-Übereinstimmungen (String-Eingabe)

Durchsucht die angegebene Eingabezeichenfolge nach allen Vorkommen eines regulären Ausdrucks.

5

öffentlicher String Ersetzen (String-Eingabe, String-Ersetzung)

Ersetzt in einer angegebenen Eingabezeichenfolge alle Zeichenfolgen, die einem regulären Ausdrucksmuster entsprechen, durch eine angegebene Ersatzzeichenfolge.

6

öffentlicher String[] Split(String-Eingabe)

Teilt eine Eingabezeichenfolge in ein Array von Teilzeichenfolgen an den Positionen auf, die durch ein im Regex-Konstruktor angegebenes reguläres Ausdrucksmuster definiert sind.

Die vollständige Liste der Methoden und Eigenschaften finden Sie in der Microsoft-Dokumentation zu C#.

Beispiel 1

Das folgende Beispiel findet Wörter, die mit 'S' beginnen −

Live-Demo
using System;
using System.Text.RegularExpressions;

namespace RegExApplication {
   class Program {
      private static void showMatch(string text, string expr) {
         Console.WriteLine("The Expression: " + expr);
         MatchCollection mc = Regex.Matches(text, expr);
         
         foreach (Match m in mc) {
            Console.WriteLine(m);
         }
      }
      static void Main(string[] args) {
         string str = "A Thousand Splendid Suns";
         
         Console.WriteLine("Matching words that start with 'S': ");
         showMatch(str, @"\bS\S*");
         Console.ReadKey();
      }
   }
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt er das folgende Ergebnis −

Matching words that start with 'S':
The Expression: \bS\S*
Splendid
Suns

Beispiel 2

Das folgende Beispiel findet Wörter, die mit „m“ beginnen und mit „e“ enden −

Live-Demo
using System;
using System.Text.RegularExpressions;

namespace RegExApplication {
   class Program {
      private static void showMatch(string text, string expr) {
         Console.WriteLine("The Expression: " + expr);
         MatchCollection mc = Regex.Matches(text, expr);
         
         foreach (Match m in mc) {
            Console.WriteLine(m);
         }
      }
      static void Main(string[] args) {
         string str = "make maze and manage to measure it";

         Console.WriteLine("Matching words start with 'm' and ends with 'e':");
         showMatch(str, @"\bm\S*e\b");
         Console.ReadKey();
      }
   }
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt er das folgende Ergebnis −

Matching words start with 'm' and ends with 'e':
The Expression: \bm\S*e\b
make
maze
manage
measure

Beispiel 3

Dieses Beispiel ersetzt zusätzlichen Leerraum −

Live-Demo
using System;
using System.Text.RegularExpressions;

namespace RegExApplication {
   class Program {
      static void Main(string[] args) {
         string input = "Hello   World   ";
         string pattern = "\\s+";
         string replacement = " ";
         
         Regex rgx = new Regex(pattern);
         string result = rgx.Replace(input, replacement);

         Console.WriteLine("Original String: {0}", input);
         Console.WriteLine("Replacement String: {0}", result);    
         Console.ReadKey();
      }
   }
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt er das folgende Ergebnis −

Original String: Hello World   
Replacement String: Hello World   

C Sprache

  1. C#-Ausdrücke, -Anweisungen und -Blöcke (mit Beispielen)
  2. C#-String
  3. Java-Ausdrücke, -Anweisungen und -Blöcke
  4. Java-Strings
  5. Java-Enum-Strings
  6. Java-Lambda-Ausdrücke
  7. C++ Strings:strcpy(), strcat(), strlen(), strcmp() BEISPIELE
  8. Strings in C:Variable deklarieren, initialisieren, drucken, Beispiel
  9. Python String count() mit BEISPIELE
  10. Java - Strings-Klasse