在 Python 中刪除字串中的特殊字元

Muhammad Waiz Khan 2023年1月30日 2021年2月7日
  1. 在 Python 中使用 str.isalnum() 方法從字串中刪除特殊字元
  2. 在 Python 中使用 filter(str.isalnum, string) 方法從字串中刪除特殊字元
  3. 在 Python 中使用正規表示式從字串中刪除特殊字元
在 Python 中刪除字串中的特殊字元

在本文中,我們將討論在 Python 中刪除字串中所有特殊字元的各種方法。我們可以通過使用函式或正規表示式從字串中刪除特殊字元。

在 Python 中使用 str.isalnum() 方法從字串中刪除特殊字元

str.isalnum() 方法如果字元是字母數字字元,即字串中沒有特殊字元,則返回 True。如果字串中有任何特殊字元,它將返回 False

為了從字串中刪除特殊字元,我們必須檢查字元是否是字母數字字元,否則將其刪除。這個方法的實現例子如下。

string = "Hey! What's up bro?"

new_string = ''.join(char for char in string if char.isalnum())
print(new_string)

輸出:

HeyWhatsupbro

在 Python 中使用 filter(str.isalnum, string) 方法從字串中刪除特殊字元

為了從字串中刪除特殊字元,我們也可以使用 filter(str.isalnum, string) 方法,與上面解釋的方法類似。但在這種方法中,我們將不使用 str.isalnum() 方法的 for 迴圈和 if 語句,而是使用 filter() 函式。

示例程式碼:

string = "Hey! What's up bro?"

new_string = ''.join(filter(str.isalnum, string)) 
print(new_string)
HeyWhatsupbro

在 Python 中使用正規表示式從字串中刪除特殊字元

為了從字串中刪除特殊字元,我們可以寫一個正規表示式來自動刪除字串中的特殊字元。這個正規表示式將是 [^a-zA-Z0-9],其中^代表除了括號中的字元之外的任何字元,a-zA-Z0-9 代表字串只能有小寫字母以及數字。

示例程式碼:

import re

string = "Hey! What's up bro?"
new_string = re.sub(r"[^a-zA-Z0-9]","",string)
print(new_string)

輸出:

HeyWhatsupbro

相關文章 - Python String