Mengekstrak Nombor Bulat daripada Rentetan Teks menggunakan Ungkapan Biasa
Apabila bekerja dengan data yang menggabungkan nilai teks dan berangka, ia menjadi perlu untuk mengekstrak nombor tersebut dan menukarnya menjadi format yang boleh digunakan. Ungkapan biasa menyediakan cara yang berkuasa untuk mencapai pengekstrakan ini daripada rentetan input yang diberikan.
Untuk mengekstrak semua integer daripada rentetan dan menyimpannya dalam tatasusunan integer, ikut langkah berikut:
-
Tentukan Ungkapan Biasa: Buat corak ungkapan biasa yang sepadan dengan corak berangka dalam rentetan. Gunakan Pattern p = Pattern.compile("\d "); untuk mengesan satu atau lebih digit berturut-turut. Ambil perhatian bahawa corak ini hanya sepadan dengan nombor bukan negatif.
-
Dapatkan Padanan: Cipta objek Padanan menggunakan Corak. Gunakan Matcher m = p.matcher(line); untuk mengaitkan corak dengan rentetan input.
-
Lelaran melalui Padanan: Gunakan gelung untuk melelaran melalui padanan yang ditemui oleh Penjodoh. Dalam setiap lelaran, gunakan m.find() untuk mencari padanan dan m.group() untuk mengeluarkan nombor yang dipadankan.
-
Parse Integer (Pilihan): Jika perlu, huraikan yang diekstrak nombor menjadi integer menggunakan Integer.parseInt(m.group()).
-
Simpan dalam Tatasusunan: Cipta tatasusunan untuk menyimpan integer yang diekstrak dan tambahkan integer yang dihuraikan pada tatasusunan dalam setiap lelaran.
Contoh:
Pattern p = Pattern.compile("-?\d+");
Matcher m = p.matcher("There are more than -2 and less than 12 numbers here");
while (m.find()) {
System.out.println(m.group());
}
Salin selepas log masuk
Output:
-2
12
Salin selepas log masuk
Corak ungkapan biasa ini akan memadankan kedua-dua nombor positif dan negatif, membolehkan pengekstrakan nombor yang lebih mantap.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan Integer daripada Rentetan Menggunakan Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!