Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Mengeluarkan Ruang Yang Tidak Diingini dengan Cekap daripada Rentetan di Jawa?
Anda mempunyai rentetan yang mengandungi ruang antara setiap perkataan dan anda mahu mengalih keluar ruang putih yang tidak diperlukan ini. Fungsi trim() hanya mengalih keluar ruang kosong di hadapan dan di belakang, manakala replaceAll("\W", "") mengalih keluar semua aksara bukan perkataan, termasuk tanda sama dengan (=).
Untuk mencapai hasil yang diingini, anda boleh menggunakan penggantian berasaskan ungkapan biasa berikut:
st.replaceAll("\s+", "")
Ungkapan ini mengalih keluar semua aksara ruang kosong berturut-turut (\s ) daripada rentetan. Pengkuantiti sepadan dengan satu atau lebih aksara ruang putih, dengan berkesan mengalih keluar semua ruang.
Sebagai alternatif, anda boleh menggunakan ungkapan ringkas berikut, yang menghasilkan hasil yang sama:
st.replaceAll("\s", "")
Ungkapan ini mengalih keluar semua satu aksara ruang kosong daripada rentetan.
Walaupun ungkapan kedua lebih laju sedikit (kira-kira 20%), ia tidak secekap ungkapan pertama apabila berurusan dengan sejumlah besar ruang berturut-turut. Oleh itu, untuk prestasi optimum, adalah disyorkan untuk menggunakan st.replaceAll("\s ", "").
Ingat untuk menetapkan rentetan yang dikemas kini kepada pembolehubah jika anda tidak menggunakannya secara langsung:
st = st.replaceAll("\s+", "")
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan Ruang Yang Tidak Diingini dengan Cekap daripada Rentetan di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!