我可以使用什麼命令來識別和去除形成「詞」,比如某些奇怪的字符:識別並刪除奇怪的字符
í‰äó_
퀌¢í‰ä‰åí‰ä‹¢
it퀌¢í‰ä‰åí‰ä‹¢
í‰äóìgo
從一系列的文件?這些是一些例子... 我想刪除這種情況。
我可以使用什麼命令來識別和去除形成「詞」,比如某些奇怪的字符:識別並刪除奇怪的字符
í‰äó_
퀌¢í‰ä‰åí‰ä‹¢
it퀌¢í‰ä‰åí‰ä‹¢
í‰äóìgo
從一系列的文件?這些是一些例子... 我想刪除這種情況。
使用string
模塊,你已經得到了從文件中的數據後:
import string
final_str = ''
for char in my_str:
if char in string.printable:
final_str += char
替代的一行:
''.join([str(char) for char in my_str if char in string.printable])
如何正則表達式子?
類似:
import re
clean_name = re.sub(r'[^a-zA-Z0-9\._-]', '', dirty_name)
添加到正則表達式其他任何允許字符。
既然你標記shell
和command-line
,在這裏你去
$ tr -cd [:graph:][:space:] < foo.txt
_
it
go
你如何定義「奇怪」?你想過濾出不是明確的基本字母a-z的字符嗎? – 2013-04-21 23:14:38
它基本上是一系列英文中沒有意義的字符。標點符號是否被接受? ! 。它只是那些隨機字符一起出現的「字」 – bb2 2013-04-21 23:21:45
然後你想使用pythons字符串模塊,並檢查文件中的行是否在string.printable中有字符。 F3AR3DLEGEND回答了您提供該選項的問題,看看他的答案 – 2013-04-22 00:17:34