Tôi có biểu mẫu trên trang của tôi nơi người dùng có thể nhập một số văn bản và gửi nó. Văn bản sau đó được gửi đến máy chủ (REST API trên đầu trang của node.js) và lưu vào DB (postgres).Làm thế nào để loại bỏ các ký tự điều khiển khỏi chuỗi?
Vấn đề là một số ký tự lạ (ký tự điều khiển) được lưu vào DB dịp - ví dụ: ký tự điều khiển thoát (^ [) hoặc ký tự điều khiển backspace (^ H). Nói chung nó không phá vỡ bất cứ điều gì kể từ khi những nhân vật là vô hình, do đó, html được trả lại một cách chính xác. Tuy nhiên khi tôi cung cấp nội dung xml cho người đọc RSS, họ (người đọc) trả về "Định dạng XML" do các ký tự điều khiển đó (nó hoạt động sau khi xóa chúng).
Câu hỏi của tôi là cách tôi có thể xóa các ký tự đó khỏi chuỗi trên cấp độ khách hàng (javascript) hoặc cấp máy chủ (javascript/node.js)?
Tôi đã tìm thấy câu trả lời đúng ở đây: removing control characters in utf-8 string
s.replace(/[\x00-\x1F\x7F-\x9F]/g, "");
bởi ... chỉ cần làm điều đó? Lấy chuỗi, sử dụng hàm thay thế chuỗi để thay thế bất kỳ ký tự không hợp lệ nào (hoặc phạm vi ký tự) bằng '', rồi lưu thay vào đó. –
Kiểm tra chủ đề này http://stackoverflow.com/questions/4374822/javascript-regexp-remove-all-special-characters – Asik
sử dụng CDATA để bọc dữ liệu đó –