GroupCollection GroupCollection GroupCollection GroupCollection Class

Definicja

Zwraca zestaw przechwyconych grup w jednym dopasowaniu.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
Dziedziczenie
GroupCollectionGroupCollectionGroupCollectionGroupCollection
Atrybuty
Implementuje

Przykłady

W poniższym przykładzie użyto wyrażenia regularnego z grupami przechwytywania w celu wyodrębnienia informacji o znakach towarowych i zarejestrowanych znakach towarowych używanych w tekście.The following example uses a regular expression with capturing groups to extract information about trademarks and registered trademarks used in text. Wzorzec wyrażenia regularnego jest \b(\w+?)([\u00AE\u2122])interpretowany jak pokazano w poniższej tabeli.The regular expression pattern is \b(\w+?)([\u00AE\u2122]), which is interpreted as shown in the following table.

WzorzecPattern OpisDescription
\b Poszukaj granicy wyrazu.Look for a word boundary.
(\w+?) Wyszukaj jeden lub więcej znaków wyrazu.Look for one or more word characters. Razem są to znaki towarowe.Together, these form the trademarked name. (Należy zauważyć, że to wyrażenie regularne zakłada, że znak towarowy składa się z jednego wyrazu). Jest to pierwsza grupa przechwytywania.(Note that this regular expression assumes that a trademark consists of a single word.) This is the first capturing group.
([\u00AE\u2122]) Poszukaj® lub™ znaku.Look for either the ® or the ™ character. Jest to druga grupa przechwytywania.This is the second capturing group.

Dla każdego dopasowania, GroupCollection zawiera trzy Group obiekty.For each match, the GroupCollection contains three Group objects. Pierwszy obiekt zawiera ciąg, który jest zgodny z całym wyrażeniem regularnym.The first object contains the string that matches the entire regular expression. Drugi obiekt, który reprezentuje pierwszą przechwyconą grupę, zawiera nazwę produktu.The second object, which represents the first captured group, contains the product name. Trzeci obiekt, który reprezentuje drugą przechwyconą grupę, zawiera znak towarowy lub zarejestrowany znak towarowy.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

Uwagi

Klasa jest klasą kolekcji o wartości zero, która składa się z co Group najmniej jednego obiektu, który zawiera informacje o przechwyconych grupach w dopasowaniu wyrażenia regularnego. GroupCollectionThe 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. Kolekcja jest niezmienna (tylko do odczytu) i nie ma konstruktora publicznego.The collection is immutable (read-only) and has no public constructor. Obiekt jest zwracany Match.Groups przez właściwość. GroupCollectionA GroupCollection object is returned by the Match.Groups property.

Kolekcja zawiera jeden lub więcej System.Text.RegularExpressions.Group obiektów.The collection contains one or more System.Text.RegularExpressions.Group objects. Jeśli dopasowanie zakończyło się pomyślnie, pierwszy element w kolekcji zawiera Group obiekt, który odnosi się do całego dopasowania.If the match is successful, the first element in the collection contains the Group object that corresponds to the entire match. Każdy kolejny element reprezentuje przechwyconą grupę, jeśli wyrażenie regularne zawiera grupy przechwytywania.Each subsequent element represents a captured group, if the regular expression includes capturing groups. Dopasowania z numerowanych (nienazwanych) grup przechwytywania są wyświetlane w kolejności liczbowej przed dopasowaniem z nazwanych grup przechwytywania.Matches from numbered (unnamed) capturing groups appear in numeric order before matches from named capturing groups. Jeśli System.Text.RegularExpressions.Group dopasowanie nie powiedzie się, kolekcja zawiera pojedynczy obiekt, którego Success właściwość jest i której false Value właściwość jest równa 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. Aby uzyskać więcej informacji, zobacz sekcję "Konstrukcje grupujące i obiekty wyrażeń regularnych" w artykule konstrukcje grupujące .For more information, see the "Grouping Constructs and Regular Expression Objects" section in the Grouping Constructs article.

Aby wykonać iterację elementów członkowskich kolekcji, należy użyć konstrukcji iteracji kolekcji dostarczonej przez język ( foreach na przykład w C# systemach i 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 w Visual Basic) zamiast pobierania modułu wyliczającego, który jest zwracany GetEnumerator przez metodę.in Visual Basic) instead of retrieving the enumerator that is returned by the GetEnumerator method. Ponadto można uzyskać dostęp do poszczególnych numerowanych grup z Item[Int32] właściwości (indeksator w programie C#) i można uzyskać dostęp do pojedynczych nazwanych Item[String] przechwyconych grup z właściwości.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. Należy zauważyć, że można pobrać tablicę zawierającą liczby i nazwy wszystkich grup przechwytywania, wywołując Regex.GetGroupNumbers odpowiednio metody i. Regex.GetGroupNamesNote 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. Oba są metodami wystąpień i wymagają, aby utworzyć Regex wystąpienie obiektu, który reprezentuje wyrażenie regularne, które ma zostać dopasowane.Both are instance methods and require that you instantiate a Regex object that represents the regular expression to be matched.

Właściwości

Count Count Count Count

Zwraca liczbę grup w kolekcji.Returns the number of groups in the collection.

IsReadOnly IsReadOnly IsReadOnly IsReadOnly

Pobiera wartość wskazującą, czy kolekcja jest tylko do odczytu.Gets a value that indicates whether the collection is read-only.

IsSynchronized IsSynchronized IsSynchronized IsSynchronized

Pobiera wartość wskazującą, czy dostęp do programu GroupCollection jest synchronizowany (bezpieczny wątkowo).Gets a value that indicates whether access to the GroupCollection is synchronized (thread-safe).

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

Umożliwia dostęp do elementu członkowskiego kolekcji przez indeks liczb całkowitych.Enables access to a member of the collection by integer index.

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

Umożliwia dostęp do elementu członkowskiego kolekcji przez indeks ciągu.Enables access to a member of the collection by string index.

Keys Keys Keys Keys

Pobiera Wyliczenie ciągów zawierające klucze nazw kolekcji grup.Gets a string enumeration that contains the name keys of the group collection.

SyncRoot SyncRoot SyncRoot SyncRoot

Pobiera obiekt, który może służyć do synchronizowania dostępu do GroupCollection.Gets an object that can be used to synchronize access to the GroupCollection.

Values Values Values Values

Pobiera Wyliczenie grupy ze wszystkimi grupami w kolekcji grup.Gets a group enumeration with all the groups in the group collection.

Metody

ContainsKey(String) ContainsKey(String) ContainsKey(String) ContainsKey(String)

Określa, czy kolekcja grup zawiera przechwyconą grupę identyfikowaną przez określoną nazwę.Determines whether the group collection contains a captured group identified by the specified name.

CopyTo(Array, Int32) CopyTo(Array, Int32) CopyTo(Array, Int32) CopyTo(Array, Int32)

Kopiuje wszystkie elementy kolekcji do danej tablicy, zaczynając od danego indeksu.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)

Kopiuje elementy kolekcji grupy do System.Text.RegularExpressions.Group[] tablicy, rozpoczynając od określonego indeksu tablicy.Copies the elements of the group collection to a System.Text.RegularExpressions.Group[] array, starting at a particular array index.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.Determines whether the specified object is equal to the current object.

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

Dostarcza moduł wyliczający, który wykonuje iterację kolekcji.Provides an enumerator that iterates through the collection.

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

Służy jako domyślnej funkcji skrótu.Serves as the default hash function.

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

Pobiera Type bieżącego wystąpienia.Gets the Type of the current instance.

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

Tworzy płytką kopię bieżącego Object.Creates a shallow copy of the current Object.

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

Zwraca ciąg, który reprezentuje bieżący obiekt.Returns a string that represents the current object.

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

Próbuje pobrać grupę identyfikowaną za pomocą podanego klucza nazwy, jeśli istnieje w kolekcji grup.Attempts to retrieve a group identified by the provided name key, if it exists in the group collection.

Jawne implementacje interfejsu

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

Kopiuje wszystkie elementy kolekcji do określonej tablicy, zaczynając od określonego indeksu.Copies all the elements of the collection to the specified array beginning at the specified index.

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

Pobiera wartość wskazującą, czy dostęp do kolekcji jest synchronizowany (bezpieczny wątkowo).Gets a value that indicates whether access to the collection is synchronized (thread-safe).

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

Pobiera obiekt, który może służyć do synchronizowania dostępu do kolekcji.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)

Group Dodaje do kolekcji.Adds a Group to the collection. Wywołanie tej metody zawsze zgłasza NotSupportedException.Calling this method always throws NotSupportedException.

ICollection<Group>.Clear() ICollection<Group>.Clear() ICollection<Group>.Clear() ICollection<Group>.Clear()

Czyści kolekcję.Clears the collection. Wywołanie tej metody zawsze zgłasza NotSupportedException.Calling this method always throws NotSupportedException.

ICollection<Group>.Contains(Group) ICollection<Group>.Contains(Group) ICollection<Group>.Contains(Group) ICollection<Group>.Contains(Group)

Określa, czy kolekcja grup zawiera określony element grupy.Determines whether the group collection contains a specific group item.

ICollection<Group>.Remove(Group) ICollection<Group>.Remove(Group) ICollection<Group>.Remove(Group) ICollection<Group>.Remove(Group)

Group Usuwa z kolekcji.Removes a Group from the collection. Wywołanie tej metody zawsze zgłasza NotSupportedException.Calling this method always throws NotSupportedException.

IEnumerable<Group>.GetEnumerator() IEnumerable<Group>.GetEnumerator() IEnumerable<Group>.GetEnumerator() IEnumerable<Group>.GetEnumerator()

Dostarcza moduł wyliczający, który wykonuje iterację w kolekcji grup.Provides an enumerator that iterates through the group collection.

IEnumerable<KeyValuePair<String,Group>>.GetEnumerator() IEnumerable<KeyValuePair<String,Group>>.GetEnumerator() IEnumerable<KeyValuePair<String,Group>>.GetEnumerator() IEnumerable<KeyValuePair<String,Group>>.GetEnumerator()

Dostarcza moduł wyliczający, który wykonuje iterację w kolekcji grup.Provides an enumerator that iterates through the group collection.

IList.Add(Object) IList.Add(Object) IList.Add(Object) IList.Add(Object)

Dodaje obiekt do kolekcji grup.Adds an object to the group collection. Wywołanie tej metody zawsze zgłasza NotSupportedException.Calling this method always throws NotSupportedException.

IList.Clear() IList.Clear() IList.Clear() IList.Clear()

Czyści kolekcję.Clears the collection. Wywołanie tej metody zawsze zgłasza NotSupportedException.Calling this method always throws NotSupportedException.

IList.Contains(Object) IList.Contains(Object) IList.Contains(Object) IList.Contains(Object)

Określa, czy kolekcja grup zawiera określony element grupy.Determines whether the group collection contains a specific group item.

IList.IndexOf(Object) IList.IndexOf(Object) IList.IndexOf(Object) IList.IndexOf(Object)

Określa indeks określonej grupy w kolekcji grup.Determines the index of a specific group in the group collection.

IList.Insert(Int32, Object) IList.Insert(Int32, Object) IList.Insert(Int32, Object) IList.Insert(Int32, Object)

Group Wstawia do kolekcji.Inserts a Group into the collection. Wywołanie tej metody zawsze zgłasza NotSupportedException.Calling this method always throws NotSupportedException.

IList.IsFixedSize IList.IsFixedSize IList.IsFixedSize IList.IsFixedSize

Pobiera wartość wskazującą, czy kolekcja grup ma stały rozmiar.Gets a value indicating whether the group collection has a fixed size.

IList.Item[Int32] IList.Item[Int32] IList.Item[Int32] IList.Item[Int32]

Pobiera grupę w żądanym położeniu.Gets the group in the desired position.

IList.Remove(Object) IList.Remove(Object) IList.Remove(Object) IList.Remove(Object)

Group Usuwa z kolekcji.Removes a Group from the collection. Wywołanie tej metody zawsze zgłasza NotSupportedException.Calling this method always throws NotSupportedException.

IList.RemoveAt(Int32) IList.RemoveAt(Int32) IList.RemoveAt(Int32) IList.RemoveAt(Int32)

Group Usuwa z kolekcji o określonym indeksie.Removes the Group from the collection at the specified index. Wywołanie tej metody zawsze zgłasza NotSupportedException.Calling this method always throws NotSupportedException.

IList<Group>.IndexOf(Group) IList<Group>.IndexOf(Group) IList<Group>.IndexOf(Group) IList<Group>.IndexOf(Group)

Określa indeks określonej grupy w kolekcji grup.Determines the index of a specific group in the group collection.

IList<Group>.Insert(Int32, Group) IList<Group>.Insert(Int32, Group) IList<Group>.Insert(Int32, Group) IList<Group>.Insert(Int32, Group)

Group Wstawia do kolekcji.Inserts a Group into the collection. Wywołanie tej metody zawsze zgłasza NotSupportedException.Calling this method always throws NotSupportedException.

IList<Group>.Item[Int32] IList<Group>.Item[Int32] IList<Group>.Item[Int32] IList<Group>.Item[Int32]

Pobiera grupę na określonej pozycji w kolekcji.Gets the group at the specified position in the collection.

IList<Group>.RemoveAt(Int32) IList<Group>.RemoveAt(Int32) IList<Group>.RemoveAt(Int32) IList<Group>.RemoveAt(Int32)

Group Usuwa z kolekcji o określonym indeksie.Removes the Group from the collection at the specified index. Wywołanie tej metody zawsze zgłasza NotSupportedException.Calling this method always throws NotSupportedException.

Metody rozszerzania

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

Rzutuje elementy IEnumerable elementu do określonego typu.Casts the elements of an IEnumerable to the specified type.

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

Filtruje elementy IEnumerable w oparciu o określony typ.Filters the elements of an IEnumerable based on a specified type.

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

Włącza przetwarzanie równoległe zapytania.Enables parallelization of a query.

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

IEnumerable KonwertujeIQueryabledo.Converts an IEnumerable to an IQueryable.

Dotyczy

Zobacz też