Memadankan Koma di Luar Kurungan dengan Regex
Memadankan corak tertentu dalam teks ialah tugas biasa dalam pengaturcaraan, terutamanya apabila bekerja dengan fail teks atau pengguna input. Dalam contoh ini, objektifnya adalah untuk mencari semua koma dalam rentetan yang tidak disertakan dalam kurungan.
Menggunakan ungkapan biasa Java, seseorang boleh mencipta corak regex untuk mencapai matlamat ini. Regex yang disediakan ialah:
Pattern regex = Pattern.compile( ", # Match a comma\n" + "(?! # only if it's not followed by...\n" + " [^(]* # any number of characters except opening parens\n" + " \) # followed by a closing parens\n" + ") # End of lookahead", Pattern.COMMENTS);
Corak ini terpecah seperti berikut:
Pandangan negatif ke hadapan memastikan koma semasa tidak diikuti oleh kurungan penutup Ini dengan berkesan mengecualikan koma dalam kurungan.
Dalam Java, kelas Pattern boleh digunakan untuk menyusun dan memadankan corak regex kemudiannya boleh digunakan untuk mengenal pasti subrentetan yang sepadan dalam rentetan input.
Contoh penggunaan:
String input = "12,44,foo,bar,(23,45,200),6"; Matcher matcher = regex.matcher(input); while (matcher.find()) { System.out.println(matcher.group()); }
Kod ini akan mencetak koma yang tidak berada di dalam kurungan, seperti yang ditentukan oleh regex:
, , ,
Atas ialah kandungan terperinci Bagaimana untuk mencari koma di luar kurungan menggunakan regex di jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!