Tôi cần thay thế tất cả các ký tự không phải ASCII (\ x00- \ x7F) bằng một khoảng trắng. Tôi ngạc nhiên rằng điều này không dễ dàng trong Python, trừ khi tôi thiếu một cái gì đó. Hàm sau chỉ đơn giản loại bỏ tất cả các ký tự không phải ASCII:
def remove_non_ascii_1(text):
return ''.join(i for i in text if ord(i)<128)
Và cái này thay thế các ký tự không phải ASCII bằng số lượng khoảng trắng theo số lượng byte trong điểm mã ký tự (nghĩa là –
ký tự được thay thế bằng 3 khoảng trắng):
def remove_non_ascii_2(text):
return re.sub(r'[^\x00-\x7F]',' ', text)
Làm cách nào tôi có thể thay thế tất cả các ký tự không phải ASCII bằng một khoảng trắng?
Của các vô số các giống SO câu hỏi , không có địa chỉ nhân vật thay thế như phản đối để tước , và giải quyết bổ sung tất cả các ký tự khác ASCII không phải là một nhân vật cụ thể.
–
. Đó là anh chàng này .