Rumah >Java >javaTutorial >Bagaimana untuk Mengeluarkan Berbilang Ruang dengan Cekap daripada Rentetan Java?

Bagaimana untuk Mengeluarkan Berbilang Ruang dengan Cekap daripada Rentetan Java?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-27 15:24:121010semak imbas

How to Efficiently Remove Multiple Spaces from a Java String?

Cara Mengeluarkan Berbilang Ruang daripada Rentetan dalam Java

Di Java, tugas biasa ialah membersihkan rentetan dengan mengalih keluar ruang tambahan dan ruang putih mendahului atau mengekori. Begini cara untuk mencapainya:

Untuk menggantikan berbilang ruang berturut-turut dengan satu ruang, gunakan kaedah replaceAll dengan ungkapan biasa:

String mytext = " hello     there   ";
mytext = mytext.replaceAll(" +", " ");

Reeks ini sepadan dengan satu atau lebih ruang berturut-turut ( ) dan menggantikannya dengan satu ruang.

Untuk mengalih keluar ruang hadapan dan belakang sambil meruntuhkan berbilang ruang, gunakan trim dan replaceAll dalam kombinasi:

String after = before.trim().replaceAll(" +", " ");

trim mengalih keluar ruang pada permulaan dan penghujung rentetan, dan replaceAll menggantikan berbilang ruang dalam rentetan dengan satu ruang.

Untuk lebih kawalan ke atas pemadanan dan menggantikan ruang kosong, pertimbangkan untuk menggunakan sauh dan menangkap kumpulan dalam contoh regex yang disediakan:

String[] tests = {
    "  x  ",
    "  1   2   3  ",
    "",
    "   ",
};
for (String test : tests) {
    System.out.format("[%s]%n",
        test.replaceAll("^ +| +$|( )+", "")
    );
}

regex ini lebih kompleks tetapi membenarkan untuk pemadanan yang tepat dan penggantian ruang putih.

Atas ialah kandungan terperinci Bagaimana untuk Mengeluarkan Berbilang Ruang dengan Cekap daripada Rentetan 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