Rumah  >  Artikel  >  Java  >  Bagaimanakah saya boleh membahagikan rentetan kepada kumpulan huruf dan digit berselang-seli di Jawa?

Bagaimanakah saya boleh membahagikan rentetan kepada kumpulan huruf dan digit berselang-seli di Jawa?

DDD
DDDasal
2024-10-27 21:26:30930semak imbas

How can I split a string into alternating groups of letters and digits in Java?

Memisahkan Digit dan Huruf dalam Rentetan

Soalan:

Bagaimana kita boleh membahagikan rentetan ke dalam kumpulan huruf dan digit berselang-seli di Jawa, memandangkan panjang setiap kumpulan mungkin berbeza-beza?

Penyelesaian:

Untuk mencapai ini di Java, anda boleh menggunakan kaedah split() dengan ungkapan biasa yang mentakrifkan corak pemisahan. Corak yang sesuai ialah (?<=D)(?=d)|(?<=d)(?=D), yang beroperasi seperti berikut:

  • (?<=D )(?=d) mengenal pasti kedudukan antara bukan digit (D) dan digit (d).
  • (?<=d)(?=D) mengenal pasti kedudukan antara digit dan bukan- digit.

Dengan memadankan kedudukan ini, ungkapan biasa memisahkan rentetan secara berkesan pada selang waktu yang ditetapkan. Berikut ialah contoh kod:

<code class="java">String a = "123abc345def";
String[] x = a.split("(?<=\D)(?=\d)|(?<=\d)(?=\D)");</code>

Ini akan menghasilkan keputusan berikut:

x[0] = "123"
x[1] = "abc"
x[2] = "345"
x[3] = "def"

Perhatikan bahawa bilangan kumpulan (huruf dan digit) mungkin berbeza-beza, menampung input seperti "1234a5bcdef. "

Atas ialah kandungan terperinci Bagaimanakah saya boleh membahagikan rentetan kepada kumpulan huruf dan digit berselang-seli di Jawa?. 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