Rumah  >  Artikel  >  Java  >  Bagaimana untuk Memisahkan Rentetan dengan Huruf dan Nombor ke dalam Segmen Bergantian di Jawa?

Bagaimana untuk Memisahkan Rentetan dengan Huruf dan Nombor ke dalam Segmen Bergantian di Jawa?

Susan Sarandon
Susan Sarandonasal
2024-10-28 11:03:49726semak imbas

How to Split a String with Letters and Numbers into Alternating Segments in Java?

Memisahkan Huruf dan Nombor dalam Rentetan

Di Java, anda boleh menghadapi keperluan untuk memisahkan rentetan yang mengandungi kedua-dua huruf dan digit menjadi segmen berselang-seli. Sebagai contoh, memandangkan rentetan "123abc345def," anda mungkin menyasarkan hasil berikut:

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

Untuk mencapai pemisahan yang tepat ini, anda boleh menggunakan ungkapan biasa berikut:

str.split("(?<=\D)(?=\d)|(?<=\d)(?=\D)");

Corak ini membelah rentetan pada titik tertentu berdasarkan dua keadaan:

  • (?<=D)(?=\d): Memadankan kedudukan serta-merta selepas aksara bukan digit (D) dan serta-merta sebelum digit (d). Keadaan ini mengenal pasti permulaan segmen berangka.
  • (?<=d)(?=\D): Memadankan kedudukan serta-merta selepas digit dan sejurus sebelum aksara bukan digit. Keadaan ini mengenal pasti permulaan segmen huruf.

Dengan membelah rentetan pada kedudukan ini, anda boleh mengasingkan segmen huruf dan nombor yang berselang-seli.

Penjelasan tentang Regexp:

  • \D: Padan dengan mana-mana aksara bukan digit.
  • \d: Padan dengan mana-mana aksara digit.
  • (?<=) : Pandangan positif ke belakang, padankan corak sejurus sebelum kedudukan semasa.
  • (?=): Pandangan positif ke hadapan, padanan corak sejurus selepas kedudukan semasa.

Contoh Penggunaan :

String str = "123abc345def";
String[] x = str.split(&quot;(?&lt;=\D)(?=\d)|(?&lt;=\d)(?=\D)&quot;);

Selepas melaksanakan kod di atas, tatasusunan x akan mengandungi segmen berselang-seli seperti yang dikehendaki:

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

Teknik ini membolehkan anda memisahkan huruf dan digit dengan cekap dalam rentetan, membolehkan anda memprosesnya mengikut jenisnya.

Atas ialah kandungan terperinci Bagaimana untuk Memisahkan Rentetan dengan Huruf dan Nombor ke dalam Segmen Bergantian 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