刪除非ASCII 字符,同時保留句點和空格
目標是處理儲存在.txt 檔案中的文字資料並提取不包含任何非ASCII 字元的字串,同時保留空格和句點。為了實現這一點,提供的程式碼定義了一個函數 onlyascii(),它透過檢查字元的 ASCII 值來確定是否應包含該字元。不過,它目前也刪除了句點和空格。
要修改 onlyascii() 以排除句點和空格,我們可以利用 Python 的 string.printable 模組。 string.printable 包含一組被認為可列印的字符,包括空格和句點。
利用string.printable 的onlyascii() 的更新定義將是:
def onlyascii(char): if ord(char) < 48 or ord(char) > 127 or char not in string.printable: return '' else: return char
透過將此檢查合併到onlyascii(),不可列印的字元(不包括空格和句點)將被過濾掉。
以下是更新後的 onlyascii() 函數的修正程式碼:
def onlyascii(char): if ord(char) < 48 or ord(char) > 127 or char not in string.printable: return '' else: return char def get_my_string(file_path): f=open(file_path,'r') data=f.read() f.close() filtered_data=filter(onlyascii, data) filtered_data = filtered_data.lower() return filtered_data
以上是如何刪除非 ASCII 字元同時保留句點和空格?的詳細內容。更多資訊請關注PHP中文網其他相關文章!