Rumah >Java >javaTutorial >Ungkapan biasa dalam Java

Ungkapan biasa dalam Java

王林
王林asal
2023-06-08 20:37:26949semak imbas

Java ialah bahasa pengaturcaraan yang digunakan secara meluas yang menyediakan keupayaan pemprosesan aksara yang berkuasa, termasuk keupayaan untuk menggunakan ungkapan biasa. Ungkapan biasa ialah alat padanan corak yang sangat berguna untuk mencari, menggantikan, mengesahkan dan mengekstrak corak dan data tertentu dengan cepat apabila bekerja dengan teks dan rentetan.

Ungkapan biasa dalam Java menggunakan pakej java.util.regex. Kelas dalam pakej ini termasuk Pattern dan Matcher, yang menyediakan fungsi teras ungkapan biasa Kami akan memperkenalkan penggunaannya dengan lebih terperinci dalam artikel berikut.

  1. Kelas corak

Kelas Corak ialah perwakilan terkumpul bagi ungkapan biasa. Kami menggunakan kaedah Pattern.compile() untuk menyusun ungkapan biasa dan mendapatkan objek Pattern. Sebagai contoh, kod berikut akan menyusun ungkapan biasa yang sepadan dengan nombor:

Pattern pattern = Pattern.compile("\d+");

Dalam contoh ini, kami menggunakan ungkapan biasa d+ untuk memadankan satu atau lebih nombor berturut-turut. D dalam ungkapan biasa ini mewakili sebarang nombor, dan + mewakili padanan satu atau lebih aksara sebelumnya.

  1. Kelas Matcher

Kelas Matcher ialah alat untuk memadankan rentetan input. Kami menggunakan kaedah dalam kelas ini untuk melaksanakan operasi pemadanan seperti find(), matches(), dan replaceAll(). Selepas kita mencipta objek Corak, kita boleh memadankannya dengan rentetan yang kita mahu padankan.

Sebagai contoh, kod berikut akan memadankan semua nombor dalam rentetan input dan mencetaknya:

String input = "123-456-7890";
Pattern pattern = Pattern.compile("\d+");
Matcher matcher = pattern.matcher(input);
while (matcher.find()) {
    System.out.println(matcher.group());
}

Dalam contoh ini, kita mula-mula mentakrifkan input rentetan input, The Pattern.compile() kaedah kemudiannya digunakan untuk mencipta objek Corak yang mewakili ungkapan biasa yang sepadan dengan satu atau lebih nombor. Seterusnya, kami menggunakan objek Matcher untuk mencari semua nombor yang sepadan daripada rentetan input dan mencetaknya satu demi satu menggunakan gelung sementara.

  1. Sintaks ungkapan biasa yang biasa digunakan

Ungkapan biasa ialah alat padanan corak yang hebat:

  • String: Dalam ungkapan biasa, anda boleh menggunakan rentetan literal untuk memadankan rentetan. Sebagai contoh, ungkapan "hello" akan sepadan dengan mana-mana rentetan yang mengandungi perkataan "hello".
  • Kelas aksara: Kelas aksara ialah peraturan padanan yang mengandungi berbilang aksara dalam ungkapan biasa. Contohnya, [abc] sepadan dengan mana-mana aksara a, b atau c.
  • Julat: Anda boleh menggunakan julat untuk menentukan set aksara dalam kelas aksara. Contohnya, [0-9] memadankan sebarang nombor dari 0 hingga 9.
  • Metacharacter: Metacharacter ialah aksara khas dalam ungkapan biasa. Berikut ialah beberapa aksara meta yang biasa digunakan:

    • Padan dengan mana-mana watak.
    • d sepadan dengan sebarang nombor.
    • w sepadan dengan mana-mana watak perkataan.
    • s sepadan dengan mana-mana aksara ruang tunggal.
  • Kelayakan: Anda boleh menggunakan kelayakan untuk menentukan bilangan corak yang sepadan. Sebagai contoh, * sepadan dengan aksara sebelumnya sifar atau lebih kali, + sepadan dengan satu atau lebih masa dan ?
  1. Kesimpulan

Ekspresi biasa dalam Java menyediakan alatan padanan corak yang pantas dan fleksibel. Kita boleh menggunakan kelas Pattern dan Matcher untuk menyusun dan melaksanakan ungkapan biasa dan menggunakan sintaks ungkapan biasa biasa untuk melaksanakan operasi padanan corak yang kami perlukan. Kemahiran dalam alatan dan sintaks ini akan meningkatkan kecekapan dan kualiti pemprosesan rentetan dan teks kami.

Atas ialah kandungan terperinci Ungkapan biasa dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn