建立對多個作業系統安全的檔案名稱需要刪除可能不允許的字元。為此,我們尋求一種優雅的解決方案,保留字母數字“_-.()”,並與最佳實踐保持一致。
Django 框架透過其「slugify()」函數提供了完美的解決方案。此函數將任意文字轉換為檔案名稱友善的格式。它規範化 Unicode,刪除非字母數字字元(“_-.()”中的字元除外),轉換為小寫,並修剪前導/尾隨空格、破折號和下劃線。
以下是Django sluggification 過程:
<code class="python">def slugify(value): value = unicodedata.normalize('NFKD', value) # Normalize Unicode value = value.encode('ascii', 'ignore').decode('ascii') # Convert to ASCII value = re.sub(r'[^\w\s-]', '', value.lower()) # Remove non-alphanumeric characters return re.sub(r'[-\s]+', '-', value).strip('-_') # Convert spaces to dashes, trim leading/trailing special characters</code>
透過利用「slugify()」函數或調整其演算法,您可以確保您的檔案名稱有效並遵循跨多個作業系統的最佳實踐。
以上是如何在 Python 中清理字串以獲得有效檔案名稱?的詳細內容。更多資訊請關注PHP中文網其他相關文章!