GroupCollection.Item[] Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ermöglicht den Zugriff auf ein einzelnes Element der Auflistung anhand eines ganzzahligen oder Zeichenfolgenindexes.
Überlädt
| Name | Beschreibung |
|---|---|
| Item[Int32] |
Ermöglicht den Zugriff auf ein Element der Auflistung nach ganzzahligem Index. |
| Item[String] |
Ermöglicht den Zugriff auf ein Element der Auflistung nach Zeichenfolgenindex. |
Item[Int32]
- Quelle:
- GroupCollection.cs
- Quelle:
- GroupCollection.cs
- Quelle:
- GroupCollection.cs
- Quelle:
- GroupCollection.cs
- Quelle:
- GroupCollection.cs
Ermöglicht den Zugriff auf ein Element der Auflistung nach ganzzahligem Index.
public:
property System::Text::RegularExpressions::Group ^ default[int] { System::Text::RegularExpressions::Group ^ get(int groupnum); };
public System.Text.RegularExpressions.Group this[int groupnum] { get; }
member this.Item(int) : System.Text.RegularExpressions.Group
Default Public ReadOnly Property Item(groupnum As Integer) As Group
Parameter
- groupnum
- Int32
Der nullbasierte Index des abzurufenden Sammlungselements.
Eigenschaftswert
Das Element der durch groupnum.
Implementiert
Beispiele
Im folgenden Beispiel wird ein regulärer Ausdruck definiert, der aus zwei nummerierten Gruppen besteht. Die erste Gruppe erfasst eine oder mehrere aufeinander folgende Ziffern. Die zweite Gruppe entspricht einem einzelnen Zeichen. Da das Modul für reguläre Ausdrücke nach Null oder einem Vorkommen der ersten Gruppe sucht, wird nicht immer eine Übereinstimmung gefunden, auch wenn die Übereinstimmung mit dem regulären Ausdruck erfolgreich ist. Das Beispiel veranschaulicht dann das Ergebnis, wenn die Item[Int32] Eigenschaft verwendet wird, um eine nicht übereinstimmende Gruppe, eine übereinstimmende Gruppe und eine Gruppe abzurufen, die nicht im regulären Ausdruck definiert ist. Im Beispiel wird ein Muster (\d+)*(\w)\2für reguläre Ausdrücke definiert, das wie in der folgenden Tabelle dargestellt interpretiert wird.
| Schema | Beschreibung |
|---|---|
(\d+)* |
Entspricht einem oder mehreren Vorkommen einer Dezimalziffer. Dies ist die erste Erfassungsgruppe. Stimmen Sie mit diesem Muster entweder null oder einmal überein. |
(\w) |
Dies ist die zweite Erfassungsgruppe. |
\k |
Stimmen Sie mit der von der zweiten Erfassungsgruppe erfassten Zeichenfolge überein. |
using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"(\d+)*(\w)\2";
string input = "AA";
Match match = Regex.Match(input, pattern);
// Get the first named group.
Group group1 = match.Groups[1];
Console.WriteLine("Group 1 value: {0}", group1.Success ? group1.Value : "Empty");
// Get the second named group.
Group group2 = match.Groups[2];
Console.WriteLine("Group 2 value: {0}", group2.Success ? group2.Value : "Empty");
// Get a non-existent group.
Group group3 = match.Groups[3];
Console.WriteLine("Group 3 value: {0}", group3.Success ? group3.Value : "Empty");
}
}
// The example displays the following output:
// Group 1 value: Empty
// Group 2 value: A
// Group 3 value: Empty
Imports System.Text.RegularExpressions
Module Example
Public Sub Main()
Dim pattern As String = "(\d+)*(\w)\2"
Dim input As String = "AA"
Dim match As Match = Regex.Match(input, pattern)
' Get the first named group.
Dim group1 As Group = match.Groups.Item(1)
Console.WriteLine("Group 1 value: {0}", If(group1.Success, group1.Value, "Empty"))
' Get the second named group.
Dim group2 As Group = match.Groups.Item(2)
Console.WriteLine("Group 2 value: {0}", If(group2.Success, group2.Value, "Empty"))
' Get a non-existent group.
Dim group3 As Group = match.Groups.Item(3)
Console.WriteLine("Group 3 value: {0}", If(group3.Success, group3.Value, "Empty"))
End Sub
End Module
' The example displays the following output:
' Group 1 value: Empty
' Group 2 value: A
' Group 3 value: Empty
Hinweise
Die Item[Int32] Eigenschaft ist der Index (in C#) oder die Standardeigenschaft (in Visual Basic) der GroupCollection Klasse. Sie können die Member der Auflistung mithilfe einer foreach Anweisung in C# oder einer For Each Anweisung in Visual Basic aufzählen.
Sie können diese Eigenschaft auch verwenden, um einzelne erfasste Gruppen anhand ihrer Indexnummer abzurufen. Sie können ein Array abrufen, das die Anzahl aller Aufnahmegruppen in einem regulären Ausdruck enthält, indem Sie die Instanzmethode Regex.GetGroupNumbers aufrufen. Sie können benannte Erfassungsgruppen auch ihren Nummern zuordnen, indem Sie die Instanzmethode Regex.GroupNumberFromName aufrufen.
Sie können die Anzahl der Elemente in der Auflistung ermitteln, indem Sie den Wert der Count Eigenschaft abrufen. Gültige Werte für den groupnum Parameterbereich von 0 bis 1 kleiner als die Anzahl der Elemente in der Auflistung.
Das GroupCollection von der Match.Groups Eigenschaft zurückgegebene Objekt verfügt immer über mindestens ein Element. Wenn das Modul für reguläre Ausdrücke keine Übereinstimmungen in einer bestimmten Eingabezeichenfolge finden kann, weist das einzelne Group Objekt in der Auflistung seine Group.Success Eigenschaft auf false und seine Group.Value Eigenschaft auf String.Empty.
Wenn groupnum es sich nicht um den Index eines Elements der Auflistung handelt oder groupnum wenn es sich um den Index einer Erfassungsgruppe handelt, die nicht in der Eingabezeichenfolge abgeglichen wurde, gibt die Methode ein Group Objekt zurück, dessen Group.Success Eigenschaft und false dessen Group.Value Eigenschaft lautet String.Empty.
Weitere Informationen
Gilt für:
Item[String]
- Quelle:
- GroupCollection.cs
- Quelle:
- GroupCollection.cs
- Quelle:
- GroupCollection.cs
- Quelle:
- GroupCollection.cs
- Quelle:
- GroupCollection.cs
Ermöglicht den Zugriff auf ein Element der Auflistung nach Zeichenfolgenindex.
public:
property System::Text::RegularExpressions::Group ^ default[System::String ^] { System::Text::RegularExpressions::Group ^ get(System::String ^ groupname); };
public System.Text.RegularExpressions.Group this[string groupname] { get; }
member this.Item(string) : System.Text.RegularExpressions.Group
Default Public ReadOnly Property Item(groupname As String) As Group
Parameter
- groupname
- String
Der Name einer Aufnahmegruppe.
Eigenschaftswert
Das Element der durch groupname.
Implementiert
Beispiele
Im folgenden Beispiel wird ein regulärer Ausdruck definiert, der aus zwei benannten Gruppen besteht. Die erste Gruppe numbers, erfasst eine oder mehrere aufeinander folgende Ziffern. Die zweite Gruppe entspricht lettereinem einzelnen Zeichen. Da das Modul für reguläre Ausdrücke nach Null oder einem Vorkommen des musters sucht, das von der numbers Gruppe definiert wurde, ist die numbers Gruppe nicht immer vorhanden, auch wenn eine Übereinstimmung erfolgreich ist. Das Beispiel veranschaulicht dann das Ergebnis, wenn die Item[String] Eigenschaft verwendet wird, um eine nicht übereinstimmende Gruppe, eine übereinstimmende Gruppe und eine Gruppe abzurufen, die nicht im regulären Ausdruck definiert ist. Im Beispiel wird ein Muster (?<numbers>\d+)*(?<letter>\w)\k<letter>für reguläre Ausdrücke definiert, das wie in der folgenden Tabelle dargestellt interpretiert wird.
| Schema | Beschreibung |
|---|---|
(?<numbers>\d+)* |
Entspricht einem oder mehreren Vorkommen einer Dezimalziffer. Benennen Sie dies der numbers Aufzeichnungsgruppe. Stimmen Sie mit diesem Muster entweder null oder einmal überein. |
(?<letter>\w) |
Entspricht einem einzelnen Wortzeichen. Benennen Sie dies der letter Aufzeichnungsgruppe. |
\k<letter> |
Stimmen Sie mit der von der letter Aufnahmegruppe erfassten Zeichenfolge überein. |
using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"(?<numbers>\d+)*(?<letter>\w)\k<letter>";
string input = "AA";
Match match = Regex.Match(input, pattern);
// Get the first named group.
Group group1 = match.Groups["numbers"];
Console.WriteLine("Group 'numbers' value: {0}", group1.Success ? group1.Value : "Empty");
// Get the second named group.
Group group2 = match.Groups["letter"];
Console.WriteLine("Group 'letter' value: {0}", group2.Success ? group2.Value : "Empty");
// Get a non-existent group.
Group group3 = match.Groups["none"];
Console.WriteLine("Group 'none' value: {0}", group3.Success ? group3.Value : "Empty");
}
}
// The example displays the following output:
// Group 'numbers' value: Empty
// Group 'letter' value: A
// Group 'none' value: Empty
Imports System.Text.RegularExpressions
Module Example
Public Sub Main()
Dim pattern As String = "(?<numbers>\d+)*(?<letter>\w)\k<letter>"
Dim input As String = "AA"
Dim match As Match = Regex.Match(input, pattern)
' Get the first named group.
Dim group1 As Group = match.Groups.Item("numbers")
Console.WriteLine("Group 'numbers' value: {0}", If(group1.Success, group1.Value, "Empty"))
' Get the second named group.
Dim group2 As Group = match.Groups.Item("letter")
Console.WriteLine("Group 'letter' value: {0}", If(group2.Success, group2.Value, "Empty"))
' Get a non-existent group.
Dim group3 As Group = match.Groups.Item("none")
Console.WriteLine("Group 'none' value: {0}", If(group3.Success, group3.Value, "Empty"))
End Sub
End Module
' The example displays the following output:
' Group 'numbers' value: Empty
' Group 'letter' value: A
' Group 'none' value: Empty
Hinweise
groupName kann entweder der Name einer Erfassungsgruppe sein, die durch das (?<Namenselement>) in einem regulären Ausdruck definiert wird, oder die Zeichenfolgendarstellung der Anzahl einer Erfassungsgruppe, die durch ein Gruppierungskonstrukt definiert wird. Weitere Informationen zu Gruppen in regulären Ausdrücken finden Sie unter Grouping Constructs.
Sie können die Namen aller erfassten Gruppen in einem Regex Objekt abrufen, indem Sie die Regex.GetGroupNames Methode aufrufen. Sie können die Anzahl der Erfassungsgruppen in einem regulären Ausdruck auch ihren Namen zuordnen, indem Sie die Regex.GroupNameFromNumber Methode aufrufen. Einzelne Namen aus dem Array können dann an die Item[String] Eigenschaft übergeben werden, um die erfasste Zeichenfolge abzurufen.
Wenn groupname es sich nicht um den Namen einer Erfassungsgruppe in der Auflistung handelt oder groupname wenn es sich um den Namen einer Erfassungsgruppe handelt, die nicht in der Eingabezeichenfolge abgeglichen wurde, gibt die Methode ein Group Objekt zurück, dessen Group.Success Eigenschaft und false dessen Group.Value Eigenschaft lautet String.Empty.