Gunakan C# untuk membelah rentetan dipisahkan koma di luar petikan
Untuk rentetan parameter yang mengandungi koma terbenam di luar petikan, anda boleh menggunakan kaedah ungkapan biasa untuk memisahkannya dengan tepat.
Soalan:
Pisah rentetan "('ABCDEFG', 123542, 'XYZ 99,9')" kepada bahagian komponennya, dengan hujah terakhir mengandungi koma dalam petikan.
Penyelesaian:
Gunakan ungkapan biasa untuk mengenal pasti koma di luar petikan untuk mencapai pemisahan yang diingini:
<code class="language-c#">",(?=(?:[^']*'[^']*')*[^']*$)"</code>
Corak regex ini sepadan dengan mana-mana koma yang tidak muncul sebelum atau selepas bilangan petikan ganjil.
Pelaksanaan:
Kod berikut menggunakan ungkapan biasa untuk memisahkan rentetan sampel:
<code class="language-c#">string samplestring = "('ABCDEFG', 123542, 'XYZ 99,9')"; string[] result = Regex.Split(samplestring, ",(?=(?:[^']*'[^']*')*[^']*$)");</code>
Output:
Tatasusunan yang terhasil akan mengandungi komponen individu:
<code>['ABCDEFG', '123542', 'XYZ 99,9']</code>
Atas ialah kandungan terperinci Bagaimana untuk Memisahkan Rentetan Dipisahkan Koma dengan Petikan Dalaman Koma Terbenam dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!