Sdílet prostřednictvím


GroupCollection.CopyTo Metoda

Definice

Přetížení

CopyTo(Array, Int32)

Zkopíruje všechny prvky kolekce do daného pole počínaje daným indexem.

CopyTo(Group[], Int32)

Zkopíruje prvky kolekce skupin do Group pole počínaje konkrétním indexem pole.

CopyTo(Array, Int32)

Zkopíruje všechny prvky kolekce do daného pole počínaje daným indexem.

public:
 virtual void CopyTo(Array ^ array, int arrayIndex);
public void CopyTo (Array array, int arrayIndex);
abstract member CopyTo : Array * int -> unit
override this.CopyTo : Array * int -> unit
Public Sub CopyTo (array As Array, arrayIndex As Integer)

Parametry

array
Array

Pole, do které se má kolekce zkopírovat.

arrayIndex
Int32

Pozice v cílovém poli, kde má kopírování začínat.

Implementuje

Výjimky

array je null.

arrayIndex je mimo hranice array.

-nebo-

arrayIndex plus Count je mimo hranice array.

Příklady

Následující příklad extrahuje každé slovo z věty a zachytí ho ve skupině zachytávání. CopyTo Metoda se pak použije ke zkopírování prvků v objektu každé shody GroupCollection do pole, které obsahuje zachytávání skupin ze všech shod. Jednotlivá zachycená slova se pak zobrazí v konzole.

using System;
using System.Text.RegularExpressions;

public class Example
{
   public static void Main()
   {
      string pattern = @"\b(\S+?)\b";
      string input = "This sentence is rather short but pointless.";

      MatchCollection matches = Regex.Matches(input, pattern);
      object[] words = new object[matches.Count * 2];
      
      int index = 0;
      foreach (Match match in matches)
      {
         match.Groups.CopyTo(words, index);
         index += 2;
      }
      
      // Display captured groups.
      for (int ctr = 1; ctr <= words.GetUpperBound(0); ctr += 2)
         Console.WriteLine(words[ctr]);
   }
}
// The example displays the following output:
//       This
//       sentence
//       is
//       rather
//       short
//       but
//       pointless
Imports System.Text.RegularExpressions

Module Example
   Public Sub Main()
      Dim pattern As String = "\b(\S+?)\b"
      Dim input As String = "This sentence is rather short but pointless."

      Dim matches As MatchCollection = Regex.Matches(input, pattern)
      Dim words(matches.Count * 2 - 1) As Object
      
      Dim index As Integer = 0
      For Each match As Match In matches
         match.Groups.CopyTo(words, index)
         index += 2
      Next
      ' Display captured groups.
      For ctr As Integer = 1 To words.GetUpperBound(0) Step 2
         Console.WriteLine(words(ctr))
      Next
   End Sub
End Module
' The example displays the following output:
'       This
'       sentence
'       is
'       rather
'       short
'       but
'       pointless

Regulární výraz je definován takto:

Vzor Description
\b Porovná hranici slova.
(\S+?) Porovná jeden nebo více prázdných znaků. Přiřaďte je k první zachytávání skupiny.
\b Porovná hranici slova.

Poznámky

Vzhledem k tomu, že se celá kolekce zkopíruje do pole počínaje daným indexem, musí být cílové pole alespoň tak velké jako kolekce.

Upozornění

Tento člen není k dispozici v knihovně přenosných tříd. Pokud vyvíjíte aplikace, které cílí na knihovnu přenosných tříd, použijte místo toho metodu GroupCollection.ICollection.CopyTo .

Platí pro

CopyTo(Group[], Int32)

Zkopíruje prvky kolekce skupin do Group pole počínaje konkrétním indexem pole.

public:
 virtual void CopyTo(cli::array <System::Text::RegularExpressions::Group ^> ^ array, int arrayIndex);
public void CopyTo (System.Text.RegularExpressions.Group[] array, int arrayIndex);
abstract member CopyTo : System.Text.RegularExpressions.Group[] * int -> unit
override this.CopyTo : System.Text.RegularExpressions.Group[] * int -> unit
Public Sub CopyTo (array As Group(), arrayIndex As Integer)

Parametry

array
Group[]

Jednorozměrné pole, které je cílem prvků zkopírovaných z kolekce skupin. Pole musí mít indexování s nulovým základem.

arrayIndex
Int32

Index založený na nule v poli array, ve kterém kopírování začíná.

Implementuje

Výjimky

array je null.

Hodnota arrayIndex je menší než nula.

-nebo-

arrayIndexje větší než délka .array

Délka array - arrayIndex je menší než počet kolekcí skupin.

Platí pro