Rumah  >  Artikel  >  Java  >  Bagaimanakah Kumpulan Penangkapan Dinamakan Memudahkan Penghuraian Regex di Java?

Bagaimanakah Kumpulan Penangkapan Dinamakan Memudahkan Penghuraian Regex di Java?

Patricia Arquette
Patricia Arquetteasal
2024-11-06 03:25:02264semak imbas

How Do Named Capturing Groups Simplify Regex Parsing in Java?

Kumpulan Dinamakan Regex di Java

Platform Java, Edisi Standard 7 (Java 7) kini menyertakan sokongan untuk kumpulan penangkapan dinamakan dalam ungkapan biasa. Ciri ini membolehkan anda merujuk kepada Menangkap kumpulan mengikut nama, menjadikannya lebih mudah untuk menghuraikan dan memproses corak yang kompleks.

Sintaks

Untuk menentukan kumpulan penangkap bernama, gunakan sintaks:

(?<name>capturing text)

Di mana:

  • nama ialah nama yang dikehendaki bagi kumpulan penangkap.
  • teks penangkapan mewakili bahagian corak yang ingin anda tangkap.

Untuk merujuk kepada kumpulan penangkap bernama, gunakan sintaks:

  • k dalam corak untuk merujuk semula kumpulan.
  • ${name} dalam rentetan gantian Matcher untuk menggantikan teks dengan nilai yang ditangkap.
  • Matcher.group(String name) untuk mendapatkan semula yang ditangkap nilai.

Contoh

Sebagai contoh, pertimbangkan ungkapan biasa berikut:

"(?<login>\w+) (?<id>\d+)"

Apabila dipadankan dengan rentetan "TEST 123," ungkapan ini akan menangkap kumpulan yang dinamakan berikut:

  • log masuk: "TEST"
  • id: "123"

Alternatif Pra-Java 7

Sebelum Java 7, beberapa perpustakaan pihak ketiga menyediakan sokongan kumpulan penangkapan bernama. Pustaka ini mempunyai keserasian terhad dengan versi Java semasa. Beberapa contoh termasuk:

  • Google bernama-regex: Mungkin tidak aktif dengan pelbagai pepijat. Pertimbangkan fork GitHubnya.
  • jregex: Pelaksanaan terhad yang tidak menyokong ciri seperti berbilang kumpulan bernama dengan nama yang sama atau rekursi dalam regex.

Kesimpulan

Kumpulan penangkap yang dinamakan menyediakan cara yang mudah dan fleksibel untuk menghuraikan corak kompleks di Jawa. Dengan sokongan dalam Java 7 dan ketersediaan perpustakaan pihak ketiga, anda boleh memanfaatkan ciri ini untuk pelbagai tugas pemprosesan teks.

Atas ialah kandungan terperinci Bagaimanakah Kumpulan Penangkapan Dinamakan Memudahkan Penghuraian Regex di 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