Pemahaman tentang pembatas ungkapan biasa dalam C#
Apabila menggunakan ungkapan biasa dalam kod C#, sesetengah pembangun mungkin menghadapi situasi ini: ungkapan biasa yang dinyahpenyah dan diuji dalam talian tidak dapat menghasilkan hasil yang diharapkan selepas ditukar kepada kod C#. Masalahnya berpunca daripada fakta bahawa sintaks yang digunakan dalam alat ungkapan biasa dalam talian (seperti "/W/g") mengandungi pembatas ungkapan biasa, yang tidak disokong oleh kod C#.
Cabaran dengan pembatas ungkapan biasa dalam C#
Dalam sesetengah bahasa pengaturcaraan (seperti PHP, Perl dan JavaScript), ungkapan biasa boleh diisytiharkan menggunakan sintaks "
Penyelesaian: Gunakan pengubah sebaris dan elakkan pemisah
Untuk menyelesaikan isu ini, pembangun yang menggunakan ungkapan biasa dalam C# hendaklah mengikut garis panduan berikut:
@"W"
bukannya "/\W/g"
untuk mewakili corak dalam kod C#. Regex.Replace
dengan hujah pengubah suai sebaris untuk menguatkuasakan gelagat padanan yang diingini (cth., RegexOptions.IgnoreCase
untuk padanan tidak sensitif huruf besar-besaran). Contoh:
<code class="language-csharp">// 使用分隔符的原始正则表达式语法 name = Regex.Replace(name, @"/\W/g", ""); // C#中修正后的正则表达式语法(无需分隔符) name = Regex.Replace(name, @"\W", "");</code>
Dengan mengikut garis panduan ini, pembangun boleh menyepadukan ungkapan biasa dengan berkesan ke dalam kod C# dan memastikan operasi pemadanan corak mereka berjalan dengan betul.
Atas ialah kandungan terperinci Bagaimana Menggunakan Ungkapan Biasa (Regex) dengan betul dalam C# Tanpa Pembatas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!