GroupCollection GroupCollection GroupCollection GroupCollection Class

Definition

Gibt die Menge der Erfassungsgruppen in einer einzelnen Übereinstimmung zurück.Returns the set of captured groups in a single match.

public ref class GroupCollection : System::Collections::ICollection
[System.Serializable]
public class GroupCollection : System.Collections.ICollection
type GroupCollection = class
    interface ICollection
    interface IEnumerable
Public Class GroupCollection
Implements ICollection
Vererbung
GroupCollectionGroupCollectionGroupCollectionGroupCollection
Attribute
Implementiert

Beispiele

Im folgende Beispiel verwendet einen regulären Ausdruck mit der Erfassung von Gruppen zum Extrahieren von Informationen zu Marken und eingetragenen Marken, die im Text-Format verwendet.The following example uses a regular expression with capturing groups to extract information about trademarks and registered trademarks used in text. Muster für reguläre Ausdrücke ist \b(\w+?)([\u00AE\u2122]), der wie in der folgenden Tabelle dargestellt interpretiert wird.The regular expression pattern is \b(\w+?)([\u00AE\u2122]), which is interpreted as shown in the following table.

MusterPattern Beschreibung Description
\b Suchen Sie nach einer Wortgrenze.Look for a word boundary.
(\w+?) Suchen Sie nach einer oder mehrerer Wortzeichen gesucht.Look for one or more word characters. Zusammen bilden diese den Markennamen.Together, these form the trademarked name. (Beachten Sie, dass dieser reguläre Ausdruck wird davon ausgegangen, dass eine Marke eines einzelnen Worts besteht.) Dies ist die erste Erfassungsgruppe.(Note that this regular expression assumes that a trademark consists of a single word.) This is the first capturing group.
([\u00AE\u2122]) Suchen Sie entweder die® oder™ Zeichen.Look for either the ® or the ™ character. Dies ist die zweite Erfassungsgruppe.This is the second capturing group.

Für jede Übereinstimmung der GroupCollection enthält drei Group Objekte.For each match, the GroupCollection contains three Group objects. Das erste Objekt enthält die Zeichenfolge, die dem gesamten regulären Ausdruck übereinstimmt.The first object contains the string that matches the entire regular expression. Das zweite Objekt, das die erste erfasste Gruppe darstellt, enthält der Name des Produkts.The second object, which represents the first captured group, contains the product name. Das dritte Objekt, in der zweite erfasste Gruppe darstellt, enthält die Marke oder Markensymbol registriert.The third object, which represents the second captured group, contains the trademark or registered trademark symbol.

using System;
using System.Text.RegularExpressions;

public class Example
{
   public static void Main()
   {
      string pattern = @"\b(\w+?)([\u00AE\u2122])";
      string input = "Microsoft® Office Professional Edition combines several office " +
                     "productivity products, including Word, Excel®, Access®, Outlook®, " +
                     "PowerPoint®, and several others. Some guidelines for creating " +
                     "corporate documents using these productivity tools are available " +
                     "from the documents created using Silverlight™ on the corporate " +
                     "intranet site.";
      
      MatchCollection matches = Regex.Matches(input, pattern);
      foreach (Match match in matches)
      {
         GroupCollection groups = match.Groups;
         Console.WriteLine("{0}: {1}", groups[2], groups[1]);
      }                               
      Console.WriteLine();
      Console.WriteLine("Found {0} trademarks or registered trademarks.", matches.Count);
   }
}
// The example displays the following output:
//       r: Microsoft
//       r: Excel
//       r: Access
//       r: Outlook
//       r: PowerPoint
//       T: Silverlight
Module Example
   Public Sub Main()
      Dim pattern As String = "\b(\w+?)([\u00AE\u2122])"
      Dim input As String = "Microsoft® Office Professional Edition combines several office " + _
                            "productivity products, including Word, Excel®, Access®, Outlook®, " + _
                            "PowerPoint®, and several others. Some guidelines for creating " + _
                            "corporate documents using these productivity tools are available " + _
                            "from the documents created using Silverlight™ on the corporate " + _
                            "intranet site."
      
      Dim matches As MatchCollection = Regex.Matches(input, pattern)
      For Each match As Match In matches
         Dim groups As GroupCollection = match.Groups
         Console.WriteLine("{0}: {1}", groups(2), groups(1))
      Next                               
      Console.WriteLine()
      Console.WriteLine("Found {0} trademarks or registered trademarks.", matches.Count)
   End Sub
End Module
' The example displays the following output:
'       r: Microsoft
'       r: Excel
'       r: Access
'       r: Outlook
'       r: PowerPoint
'       T: Silverlight

Hinweise

Die GroupCollection Klasse ist eine nullbasierte Auflistungsklasse, die von einem oder mehreren besteht Group Objekte, die Informationen zur erfassten Gruppen in Übereinstimmung mit einem regulären Ausdruck.The GroupCollection class is a zero-based collection class that consists of one or more Group objects that provide information about captured groups in a regular expression match. Die Auflistung ist unveränderlich (schreibgeschützt) und besitzt keinen öffentlichen Konstruktor.The collection is immutable (read-only) and has no public constructor. Ein GroupCollection -Objekt zurück, die Match.Groups Eigenschaft.A GroupCollection object is returned by the Match.Groups property.

Die Auflistung enthält ein oder mehrere System.Text.RegularExpressions.Group Objekte.The collection contains one or more System.Text.RegularExpressions.Group objects. Wenn die Übereinstimmung erfolgreich ist, wird das erste Element in der Auflistung enthält die Group Objekt, das die gesamte Übereinstimmung entspricht.If the match is successful, the first element in the collection contains the Group object that corresponds to the entire match. Jedes nachfolgende Element darstellt eine erfasste Gruppe ist, wenn der reguläre Ausdruck enthält Erfassungsgruppen.Each subsequent element represents a captured group, if the regular expression includes capturing groups. Übereinstimmungen aus nummerierte (unbenannte) Erfassungsgruppen werden in numerischer Reihenfolge vor Übereinstimmungen von benannten Erfassungsgruppen.Matches from numbered (unnamed) capturing groups appear in numeric order before matches from named capturing groups. Wenn die Übereinstimmung fehlschlägt, enthält die Auflistung ein einzelnes System.Text.RegularExpressions.Group Objekt, dessen Success Eigenschaft false und dessen Value -Eigenschaft gleich String.Empty.If the match is unsuccessful, the collection contains a single System.Text.RegularExpressions.Group object whose Success property is false and whose Value property equals String.Empty. Weitere Informationen finden Sie im Abschnitt "Gruppierung erstellt und regulären Ausdrucksobjekten" in der Gruppierungskonstrukte Artikel.For more information, see the "Grouping Constructs and Regular Expression Objects" section in the Grouping Constructs article.

Um die Elemente der Auflistung zu durchlaufen, sollten Sie das von Ihrer Sprache bereitgestellten Auflistung Iteration-Konstrukt verwenden (z. B. foreach in C# geschrieben und For Each...NextTo iterate through the members of the collection, you should use the collection iteration construct provided by your language (such as foreach in C# and For EachNext in Visual Basic) anstatt durch Abrufen des Enumerators, der von zurückgegeben wird das GetEnumerator Methode.in Visual Basic) instead of retrieving the enumerator that is returned by the GetEnumerator method. Darüber hinaus können Sie einzelne nummerierten erfassten Gruppen aus Zugriff auf die Item[Int32] -Eigenschaft (Indexer in c#), und Sie können auf einzelne benannte erfasste Gruppen von zugreifen der Item[String] Eigenschaft.In addition, you can access individual numbered captured groups from the Item[Int32] property (the indexer in C#), and you can access individual named captured groups from the Item[String] property. Beachten Sie, dass Sie ein Array, die die Zahlen und die Namen aller Erfassungsgruppen abrufen können durch den Aufruf enthält die Regex.GetGroupNumbers und Regex.GetGroupNames Methoden bzw.Note that you can retrieve an array that contains the numbers and names of all capturing groups by calling the Regex.GetGroupNumbers and Regex.GetGroupNames methods, respectively. Beide sind Instanzmethoden und erfordern, dass Sie instanziieren ein Regex -Objekt, das den regulären Ausdruck abgeglichen werden darstellt.Both are instance methods and require that you instantiate a Regex object that represents the regular expression to be matched.

Eigenschaften

Count Count Count Count

Gibt die Anzahl der Gruppen in der Auflistung zurück.Returns the number of groups in the collection.

IsReadOnly IsReadOnly IsReadOnly IsReadOnly

Ruft einen Wert ab, der angibt, ob die Auflistung schreibgeschützt ist.Gets a value that indicates whether the collection is read-only.

IsSynchronized IsSynchronized IsSynchronized IsSynchronized

Ruft einen Wert ab, der angibt, ob der Zugriff auf GroupCollection synchronisiert (threadsicher) ist.Gets a value that indicates whether access to the GroupCollection is synchronized (thread-safe).

Item[Int32] Item[Int32] Item[Int32] Item[Int32]

Ermöglicht den Zugriff auf einen Member der Auflistung über einen Ganzzahlenindex.Enables access to a member of the collection by integer index.

Item[String] Item[String] Item[String] Item[String]

Ermöglicht den Zugriff auf einen Member der Auflistung über einen Zeichenfolgenindex.Enables access to a member of the collection by string index.

Keys Keys Keys Keys
SyncRoot SyncRoot SyncRoot SyncRoot

Ruft ein Objekt ab, mit dem der Zugriff auf GroupCollection synchronisiert werden kann.Gets an object that can be used to synchronize access to the GroupCollection.

Values Values Values Values

Methoden

ContainsKey(String) ContainsKey(String) ContainsKey(String) ContainsKey(String)
CopyTo(Array, Int32) CopyTo(Array, Int32) CopyTo(Array, Int32) CopyTo(Array, Int32)

Kopiert alle Elemente der Auflistung ab dem angegebenen Index in das angegebene Array.Copies all the elements of the collection to the given array beginning at the given index.

CopyTo(Group[], Int32) CopyTo(Group[], Int32) CopyTo(Group[], Int32) CopyTo(Group[], Int32)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetEnumerator() GetEnumerator() GetEnumerator() GetEnumerator()

Stellt einen Enumerator bereit, der die Auflistung durchläuft.Provides an enumerator that iterates through the collection.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)
TryGetValue(String, Group) TryGetValue(String, Group) TryGetValue(String, Group) TryGetValue(String, Group)

Explizite Schnittstellenimplementierungen

ICollection.CopyTo(Array, Int32) ICollection.CopyTo(Array, Int32) ICollection.CopyTo(Array, Int32) ICollection.CopyTo(Array, Int32)

Kopiert alle Elemente der Auflistung ab dem angegebenen Index in das angegebene Array.Copies all the elements of the collection to the specified array beginning at the specified index.

ICollection.IsSynchronized ICollection.IsSynchronized ICollection.IsSynchronized ICollection.IsSynchronized

Ruft einen Wert ab, der angibt, ob der Zugriff auf die Auflistung synchronisiert (threadsicher) ist.Gets a value that indicates whether access to the collection is synchronized (thread-safe).

ICollection.SyncRoot ICollection.SyncRoot ICollection.SyncRoot ICollection.SyncRoot

Ruft ein Objekt ab, mit dem der Zugriff auf die Auflistung synchronisiert werden kann.Gets an object that can be used to synchronize access to the collection.

ICollection<Group>.Add(Group) ICollection<Group>.Add(Group) ICollection<Group>.Add(Group) ICollection<Group>.Add(Group)
ICollection<Group>.Clear() ICollection<Group>.Clear() ICollection<Group>.Clear() ICollection<Group>.Clear()
ICollection<Group>.Contains(Group) ICollection<Group>.Contains(Group) ICollection<Group>.Contains(Group) ICollection<Group>.Contains(Group)
ICollection<Group>.Remove(Group) ICollection<Group>.Remove(Group) ICollection<Group>.Remove(Group) ICollection<Group>.Remove(Group)
IEnumerable<Group>.GetEnumerator() IEnumerable<Group>.GetEnumerator() IEnumerable<Group>.GetEnumerator() IEnumerable<Group>.GetEnumerator()
IEnumerable<KeyValuePair<String,Group>>.GetEnumerator() IEnumerable<KeyValuePair<String,Group>>.GetEnumerator() IEnumerable<KeyValuePair<String,Group>>.GetEnumerator() IEnumerable<KeyValuePair<String,Group>>.GetEnumerator()
IList.Add(Object) IList.Add(Object) IList.Add(Object) IList.Add(Object)
IList.Clear() IList.Clear() IList.Clear() IList.Clear()
IList.Contains(Object) IList.Contains(Object) IList.Contains(Object) IList.Contains(Object)
IList.IndexOf(Object) IList.IndexOf(Object) IList.IndexOf(Object) IList.IndexOf(Object)
IList.Insert(Int32, Object) IList.Insert(Int32, Object) IList.Insert(Int32, Object) IList.Insert(Int32, Object)
IList.IsFixedSize IList.IsFixedSize IList.IsFixedSize IList.IsFixedSize
IList.Item[Int32] IList.Item[Int32] IList.Item[Int32] IList.Item[Int32]
IList.Remove(Object) IList.Remove(Object) IList.Remove(Object) IList.Remove(Object)
IList.RemoveAt(Int32) IList.RemoveAt(Int32) IList.RemoveAt(Int32) IList.RemoveAt(Int32)
IList<Group>.IndexOf(Group) IList<Group>.IndexOf(Group) IList<Group>.IndexOf(Group) IList<Group>.IndexOf(Group)
IList<Group>.Insert(Int32, Group) IList<Group>.Insert(Int32, Group) IList<Group>.Insert(Int32, Group) IList<Group>.Insert(Int32, Group)
IList<Group>.Item[Int32] IList<Group>.Item[Int32] IList<Group>.Item[Int32] IList<Group>.Item[Int32]
IList<Group>.RemoveAt(Int32) IList<Group>.RemoveAt(Int32) IList<Group>.RemoveAt(Int32) IList<Group>.RemoveAt(Int32)

Extension Methods

Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable)

Wandelt die Elemente eines IEnumerable in den angegebenen Typ umCasts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable)

Filtert die Elemente eines IEnumerable anhand eines angegebenen TypsFilters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable)

Ermöglicht die Parallelisierung einer Abfrage.Enables parallelization of a query.

AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable)

Konvertiert eine IEnumerable auf eine IQueryable.Converts an IEnumerable to an IQueryable.

Gilt für:

Siehe auch