GroupCollection::Item Property (String^)

 

Enables access to a member of the collection by string index.

Namespace:   System.Text.RegularExpressions
Assembly:  System (in System.dll)

public:
property Group^ default[
	String^ groupname
] {
	Group^ get(String^ groupname);
}

Parameters

groupname
Type: System::String^

The name of a capturing group.

Property Value

Type: System.Text.RegularExpressions::Group^

The member of the collection specified by groupname.

groupName can be either the name of a capturing group that is defined by the (?<name>) element in a regular expression, or the string representation of the number of a capturing group that is defined by a grouping construct. For more information about groups in regular expressions, see Grouping Constructs in Regular Expressions.

You can retrieve the names of all the captured groups in a Regex object by calling the Regex::GetGroupNames method. You can also map the numbers of capturing groups in a regular expression to their names by calling the Regex::GroupNameFromNumber method. Individual names from the array can then be passed to the Item[String^] property to retrieve the captured string.

If groupname is not the name of a capturing group in the collection, or if groupname is the name of a capturing group that has not been matched in the input string, the method returns a Group object whose Group::Success property is false and whose Group.Value property is String::Empty.

The following example defines a regular expression that consists of two named groups. The first group, numbers, captures one or more consecutive digits. The second group, letter, matches a single character. Because the regular expression engine looks for zero or one occurrence of the pattern defined by the numbers group, the numbers group is not always present even if a match is successful. The example then illustrates the result when the Item[String^] property is used to retrieve an unmatched group, a matched group, and a group that is not defined in the regular expression. The example defines a regular expression pattern (?<numbers>\d+)*(?<letter>\w)\k<letter>, which is interpreted as shown in the following table.

Pattern

Description

(?<numbers>\d+)*

Match one or more occurrence of a decimal digit. Name this the numbers capturing group. Match this pattern either zero or one time.

(?<letter>\w)

Match a single word character. Name this the letter capturing group.

\k<letter>

Match the string captured by the letter capturing group.

No code example is currently available or this language may not be supported.

Universal Windows Platform
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top
Show: