Group Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mewakili hasil dari satu grup pengambilan.
public ref class Group : System::Text::RegularExpressions::Capture
public class Group : System.Text.RegularExpressions.Capture
[System.Serializable]
public class Group : System.Text.RegularExpressions.Capture
type Group = class
inherit Capture
[<System.Serializable>]
type Group = class
inherit Capture
Public Class Group
Inherits Capture
- Warisan
- Turunan
- Atribut
Keterangan
Grup penangkapan dapat menangkap string nol, satu, atau lebih dalam satu kecocokan karena kuantifier. (Untuk informasi selengkapnya, lihat Quantifiers.) Semua substring yang cocok dengan satu grup pengambilan tersedia dari Group.Captures properti . Informasi tentang substring terakhir yang diambil dapat diakses langsung dari Value properti dan Index . (Artinya, Group instans setara dengan item terakhir koleksi yang dikembalikan oleh Captures properti , yang mencerminkan tangkapan terakhir yang dibuat oleh grup pengambilan.)
Contoh membantu mengklarifikasi hubungan ini antara Group objek dan System.Text.RegularExpressions.CaptureCollection yang dikembalikan oleh Captures properti . Pola (\b(\w+?)[,:;]?\s?)+[?.!] ekspresi reguler cocok dengan seluruh kalimat. Ekspresi reguler didefinisikan seperti yang ditunjukkan pada tabel berikut.
| Pola | Deskripsi |
|---|---|
\b |
Mulai pencocokan pada batas kata. |
(\w+?) |
Cocokkan satu atau beberapa karakter kata, tetapi sesedikit mungkin karakter. Ini adalah grup penangkapan kedua (dalam). (Grup penangkapan pertama mencakup \b elemen bahasa.) |
[,:;]? |
Cocokkan nol atau satu kemunculan koma, titik dua, atau titik koma. |
\s? |
Cocokkan nol atau satu kemunculan karakter spasi putih. |
(\b(\w+?)[,:;]?\s?)+ |
Cocokkan pola yang terdiri dari batas kata, satu atau beberapa karakter kata, simbol tanda baca, dan karakter spasi putih satu atau beberapa kali. Ini adalah kelompok penangkapan pertama. |
[?.!] |
Cocokkan kemunculan titik, tanda tanya, atau tanda seru. |
Dalam pola ekspresi reguler ini, subpattern dirancang untuk mencocokkan (\w+?) beberapa kata dalam kalimat. Namun, nilai Group objek hanya mewakili kecocokan terakhir yang (\w+?) diambil, sedangkan Captures properti mengembalikan CaptureCollection yang mewakili semua teks yang diambil. Seperti yang ditunjukkan oleh output, CaptureCollection untuk grup pengambilan kedua berisi empat objek. Yang terakhir ini sesuai dengan Group objek.
using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"(\b(\w+?)[,:;]?\s?)+[?.!]";
string input = "This is one sentence. This is a second sentence.";
Match match = Regex.Match(input, pattern);
Console.WriteLine("Match: " + match.Value);
int groupCtr = 0;
foreach (Group group in match.Groups)
{
groupCtr++;
Console.WriteLine(" Group {0}: '{1}'", groupCtr, group.Value);
int captureCtr = 0;
foreach (Capture capture in group.Captures)
{
captureCtr++;
Console.WriteLine(" Capture {0}: '{1}'", captureCtr, capture.Value);
}
}
}
}
// The example displays the following output:
// Match: This is one sentence.
// Group 1: 'This is one sentence.'
// Capture 1: 'This is one sentence.'
// Group 2: 'sentence'
// Capture 1: 'This '
// Capture 2: 'is '
// Capture 3: 'one '
// Capture 4: 'sentence'
// Group 3: 'sentence'
// Capture 1: 'This'
// Capture 2: 'is'
// Capture 3: 'one'
// Capture 4: 'sentence'
Imports System.Text.RegularExpressions
Module Example
Public Sub Main()
Dim pattern As String = "(\b(\w+?)[,:;]?\s?)+[?.!]"
Dim input As String = "This is one sentence. This is a second sentence."
Dim match As Match = Regex.Match(input, pattern)
Console.WriteLine("Match: " + match.Value)
Dim groupCtr As Integer = 0
For Each group As Group In match.Groups
groupCtr += 1
Console.WriteLine(" Group {0}: '{1}'", groupCtr, group.Value)
Dim captureCtr As Integer = 0
For Each capture As Capture In group.Captures
captureCtr += 1
Console.WriteLine(" Capture {0}: '{1}'", captureCtr, capture.Value)
Next
Next
End Sub
End Module
' The example displays the following output:
' Match: This is one sentence.
' Group 1: 'This is one sentence.'
' Capture 1: 'This is one sentence.'
' Group 2: 'sentence'
' Capture 1: 'This '
' Capture 2: 'is '
' Capture 3: 'one '
' Capture 4: 'sentence'
' Group 3: 'sentence'
' Capture 1: 'This'
' Capture 2: 'is'
' Capture 3: 'one'
' Capture 4: 'sentence'
Properti
| Nama | Deskripsi |
|---|---|
| Captures |
Mendapatkan koleksi semua tangkapan yang cocok dengan grup pengambilan, dalam urutan paling kiri-paling-pertama (atau urutan paling kanan-pertama dalam jika ekspresi reguler dimodifikasi dengan RightToLeft opsi ). Koleksi mungkin memiliki nol item atau lebih. |
| Index |
Posisi dalam string asli tempat karakter pertama substring yang diambil ditemukan. (Diperoleh dari Capture) |
| Length |
Mendapatkan panjang substring yang ditangkap. (Diperoleh dari Capture) |
| Name |
Mengembalikan nama grup penangkapan yang diwakili oleh instans saat ini. |
| Success |
Mendapatkan nilai yang menunjukkan apakah kecocokan berhasil. |
| Value |
Mendapatkan substring yang diambil dari string input. (Diperoleh dari Capture) |
| ValueSpan |
Mendapatkan rentang yang diambil dari string input. (Diperoleh dari Capture) |
Metode
| Nama | Deskripsi |
|---|---|
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| Synchronized(Group) |
Mengembalikan objek yang |
| ToString() |
Mengambil substring yang diambil dari string input dengan memanggil Value properti . (Diperoleh dari Capture) |