如何移除 URL 中的非字母數字字元並用連字號替換空格?

Patricia Arquette
發布: 2024-10-24 02:53:29
原創
866 人瀏覽過

How to Strip Non-Alphanumeric Characters and Replace Spaces with Hyphens in URLs?

剝離非字母數字字元並用連字取代空格

建構URL 時,需要將包含各種字元的標題轉換為乾淨的字串僅由字母和數字組成。這涉及刪除特殊字元並用連字符替換空格。

使用正規表示式實作

正規表示式(regex)為此任務提供了有效的解。以下是如何實現所需結果:

第1 步:用連字符替換空格

$string = str_replace(' ', '-', $string);
登入後複製

第2 步:刪除非字母數字字符

$string = preg_replace('/[^A-Za-z0-9\-]/', '', $string);
登入後複製

此正規表示式刪除所有非字母、數字或連字符的字元。

用法:

echo clean('a|"bc!@£de^&$f g');
登入後複製

輸出:

abcdef-g
登入後複製

防止多個連續字符

要確保用單一連字符替換多個連續連字符,請使用以下附加步驟:

$string = preg_replace('/-+/', '-', $string);
登入後複製

此步驟將所有出現的兩個或多個連續連字符替換為單一連字符。

以上是如何移除 URL 中的非字母數字字元並用連字號替換空格?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!