GroupCollection Class
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Represents a collection of captured groups in a single match.
Assembly: System (in System.dll)
The GroupCollection type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | Count | Returns the number of groups in the collection. |
![]() | IsReadOnly | Gets a value that indicates whether the collection is read-only. |
![]() | IsSynchronized | Gets a value that indicates whether access to the GroupCollection is synchronized (thread-safe). |
![]() | Item[Int32] | Enables access to a member of the collection by integer index. |
![]() | Item[String] | Enables access to a member of the collection by string index. |
![]() | SyncRoot | Gets an object that can be used to synchronize access to the GroupCollection. |
| Name | Description | |
|---|---|---|
![]() | CopyTo | Copies all the elements of the collection to the given array beginning at the given index. |
![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetEnumerator | Returns an enumerator that can iterate through the collection. |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
| Name | Description | |
|---|---|---|
![]() | AsQueryable | Converts an IEnumerable to an IQueryable. (Defined by Queryable.) |
![]() | Cast<TResult> | Converts the elements of an IEnumerable to the specified type. (Defined by Enumerable.) |
![]() | OfType<TResult> | Filters the elements of an IEnumerable based on a specified type. (Defined by Enumerable.) |
The collection is immutable (read-only) and has no public constructor. A GroupCollection object is returned by the Match::Groups property.
The collection contains one or more System.Text.RegularExpressions::Group objects. If the match is successful, the first element in the collection contains the string that corresponds to the entire match. Each subsequent element represents a captured group, if the regular expression includes capturing groups. If the match is unsuccessful, the collection contains a single element whose Success property is false and whose Value property equals String::Empty.
The following example uses a regular expression with capturing groups to extract information about trademarks and registered trademarks used in text. The regular expression pattern is \b(\w+?)([\u00AE\u2122]), which is interpreted as shown in the following table.
Pattern | Description |
|---|---|
\b | Look for a word boundary. |
(\w+?) | Look for one or more word characters. Together, these characters form the trademarked name. (Note that this regular expression assumes that a trademark consists of a single word.) This is the first capturing group. |
([\u00AE\u2122]) | Look for either the ® or the ™ character. This is the second capturing group. |
For each match, the GroupCollection object contains three Group objects. The first contains the string that matches the entire regular expression. The second, which represents the first captured group, contains the product name. The third, which represents the second captured group, contains the trademark or registered trademark symbol.



