轉義字串中的不可列印字元
簡介:
簡介:處理文字資料時,通常需要刪除某些不可列印的字符,這些字符可能會在儲存、顯示或操作過程中導致問題加工。了解如何有效地消除這些字元至關重要。
解決方案:要刪除不可列印的字元(0-31 和127),請根據以下情況考慮以下選項字串的編碼:
$string = preg_replace('/[\x00-\x1F\x7F-\xFF]/', '', $string);
1。 7 位 ASCII:
$string = preg_replace('/[\x00-\x1F\x7F]/', '', $string);
2。 8 位元擴充 ASCII:
$string = preg_replace('/[\x00-\x1F\x7F]/u', '', $string);
3. UTF-8:
$badchar = [...]; // Array of non-printable characters $string2 = str_replace($badchar, '', $str);
4。使用 str_replace 的替代方案:
基準測試:preg_replace 與 str_replace 的效能因字串長度和類型而異。建議對您自己的數據進行基準測試,以確定適合您的特定情況的最佳方法。
Unicode 怎麼樣?$string = preg_replace('/[\x00-\x1F\x7F\xA0]/u', '', $string);刪除特定的不可列印的 Unicode 字元(例如,無間斷空格),在字元類別中使用 xA0:
以上是如何有效率地去除不同編碼字串中的不可列印字元?的詳細內容。更多資訊請關注PHP中文網其他相關文章!