Rumah  >  Artikel  >  Java  >  Bagaimana untuk Memisahkan Rentetan Antara Huruf dan Digit dalam Java Menggunakan Ungkapan Biasa?

Bagaimana untuk Memisahkan Rentetan Antara Huruf dan Digit dalam Java Menggunakan Ungkapan Biasa?

Susan Sarandon
Susan Sarandonasal
2024-11-03 11:42:02161semak imbas

How to Split a String Between Letters and Digits in Java Using Regular Expressions?

Memisahkan Rentetan Antara Huruf dan Digit dalam Java

Tugas biasa dalam pengaturcaraan ialah membelah rentetan yang berselang seli antara huruf dan nombor. Contohnya, diberikan rentetan seperti "123abc345def," seseorang mungkin mahu memisahkannya menjadi ["123", "abc", "345", "def"].

Untuk mencapai ini, seseorang boleh menggunakan tetap ungkapan untuk menangkap corak. Di Java, ungkapan biasa berikut boleh digunakan:

(?<=\D)(?=\d)|(?<=\d)(?=\D)

Penjelasan:

  • (?<=D): Semak sama ada kedudukan semasa didahului oleh bukan- digit.
  • (?=d): Semak sama ada kedudukan semasa diikuti dengan digit.
  • |: Logik ATAU, untuk mengendalikan corak terbalik (digit diikuti dengan bukan digit).
  • \d: Padan dengan mana-mana digit.
  • \D: Padan dengan mana-mana bukan digit.

Contoh penggunaan:

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

for (String part : splitted) {
    System.out.println(part);
}

Ini kod akan dicetak:

123
abc
345
def

Perhatikan bahawa bilangan huruf dan nombor dalam rentetan boleh berbeza-beza. Ungkapan biasa akan membelah rentetan dengan betul berdasarkan corak.

Atas ialah kandungan terperinci Bagaimana untuk Memisahkan Rentetan Antara Huruf dan Digit dalam Java Menggunakan Ungkapan Biasa?. 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