Mengakses kumpulan penangkap bernama dalam ungkapan biasa .NET
Apabila menghuraikan data menggunakan ungkapan biasa dalam C#, menangkap kumpulan boleh digunakan untuk mengekstrak bahagian tertentu rentetan yang sepadan. Kumpulan penangkap yang dinamakan membenarkan akses yang lebih mudah dan bermakna kepada subkumpulan ini.
Soalan
Walaupun mencipta ungkapan biasa dengan kumpulan tangkapan bernama, mengakses nilai yang ditangkap menggunakan CaptureCollection sentiasa mengembalikan keseluruhan baris yang sepadan.
Penyelesaian
Untuk mengakses kumpulan penangkap bernama, gunakan sifat GroupCollection bagi objek Match. Koleksi ini menyediakan akses terus kepada subkumpulan yang dinamakan dalam satu perlawanan. Coretan kod berikut menunjukkan perkara ini:
<code class="language-C#">foreach (Match m in mc) { // 访问 "link" 组 MessageBox.Show(m.Groups["link"].Value); // 访问 "name" 组 MessageBox.Show(m.Groups["name"].Value); }</code>
Dengan merujuk nama kumpulan sebagai indeks dalam GroupCollection, anda boleh mendapatkan semula nilai yang ditangkap untuk setiap subkumpulan yang ditentukan dalam baris yang sepadan.
Atas ialah kandungan terperinci Bagaimana Saya Mengakses Kumpulan Menangkap Dinamakan dalam Padanan Regex .NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!