簡體   English   中英

Python - 從字符串中刪除不需要的字符

[英]Python - remove unwanted characters from a string

我有如下字符串,其中包含非 ascii 字符和其他特殊字符:

 “Projected Set-tled Balan&ce†456$

如何刪除所有不需要的字符並獲得一個干凈的字符串,如下所示,其中只有小寫或大寫字母和數字。

  Project Settled Balance 456

我試圖在正則表達式[a-zA-Z0-9 ]的幫助下實現它,我期待一種返回與此正則表達式匹配的字符串的方法:

pat = re.compile('^[A-Za-z0-9 ]+')
stripped_string = string.strip().lower()
print(stripped_string)
print(pat.match(stripped_string))

但這並沒有返回任何東西。

這不是正則表達式,因為您以前沒有要求過

''.join([i if ((i == " " )or (ord(i) < 128 and ord(i) >46)) else '' for i in '“Projected Set-tled Balan&ce†456$'])

更新了正則表達式

re.sub(r'[^A-Za-z0-9\s]+','', '“Projected Set-tled Balan&ce†456$')

aString.encode('ascii', 'ignore')

我的錯,我太愚蠢了

一次只執行一個字母,如果出現錯誤,請用空字符串替換該字符。

這被問了很多,但這里是這些。

如何刪除python中的非Ascii字符

用一個空格替換非 ASCII 字符

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM