Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengalih Keluar Aksara Kawalan Secara Selektif daripada Rentetan PHP Tanpa Mengalih Keluar Aksara Penting?

Bagaimana untuk Mengalih Keluar Aksara Kawalan Secara Selektif daripada Rentetan PHP Tanpa Mengalih Keluar Aksara Penting?

Barbara Streisand
Barbara Streisandasal
2024-10-27 03:49:03922semak imbas

 How to Selectively Remove Control Characters from PHP Strings Without Removing Essential Characters?

Mencegah Pembuangan Berlebihan Aksara daripada Rentetan PHP

Dalam PHP, mengalih keluar aksara kawalan daripada rentetan memerlukan pertimbangan yang teliti untuk mengelak daripada mengalih keluar aksara yang sah. Ungkapan biasa yang disediakan berjaya mengalih keluar aksara kawalan, tetapi ia juga secara tidak sengaja menghapuskan aksara penting lain. Ini menimbulkan persoalan: bagaimana pengaturcara boleh secara selektif mengalih keluar aksara kawalan tanpa menjejaskan integriti rentetan?

Untuk menangani isu ini, ungkapan biasa yang lebih tepat boleh digunakan:

<code class="php">preg_replace('/[\x00-\x1F\x7F]/', '', $input);</code>

Ini ungkapan menyasarkan hanya 32 aksara ASCII dan x7F yang pertama, yang merangkumi pengembalian pengangkutan, sambil mengekalkan suapan baris dan pengembalian pengangkutan (selalunya dilambangkan sebagai r dan n) jika dikehendaki.

<code class="php">preg_replace('/[\x00-\x09\x0B\x0C\x0E-\x1F\x7F]/', '', $input);</code>

Sebagai alternatif, menggunakan [:cntrl :] kelas aksara memudahkan ungkapan:

<code class="php">preg_replace('/[[:cntrl:]]/', '', $input);</code>

Nota: Ereg_replace telah ditamatkan dalam PHP dan harus digantikan dengan preg_replace.

Atas ialah kandungan terperinci Bagaimana untuk Mengalih Keluar Aksara Kawalan Secara Selektif daripada Rentetan PHP Tanpa Mengalih Keluar Aksara Penting?. 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