首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从字符串中删除控制字符?

如何从字符串中删除控制字符?
EN

Stack Overflow用户
提问于 2014-11-05 01:35:27
回答 2查看 22.3K关注 0票数 22

我有表单在我的网页上,用户可以键入一些文本,并提交它。然后将文本发送到服务器(node.js上的REST API )并保存到DB (postgres)。

问题是,一些奇怪的字符(控制字符)偶尔会保存到数据库中-例如,转义控制字符(^[)或退格控制字符(^H)。通常它不会破坏任何东西,因为这些字符是不可见的,所以html可以正确呈现。然而,当我为RSS阅读器提供xml内容时,它们(阅读器)返回“格式错误的XML”,因为这些控制字符(在删除它们之后才起作用)。

我的问题是,如何在客户端级(javascript)或服务器级(javascript/node.js)从字符串中删除这些字符?

EN

回答 2

Stack Overflow用户

发布于 2018-07-31 05:16:49

Control characters in Unicode位于代码点U+0000到U+001F,以及U+007F到U+009F。使用RegExp查找这些控制字符并将其替换为空字符串:

代码语言:javascript
复制
str.replace(/[\u0000-\u001F\u007F-\u009F]/g, "")

如果要删除其他字符,请将这些字符添加到RegExp内的character class中。例如,要删除U+200B零宽度空格,请在]之前添加\u200B

票数 32
EN

Stack Overflow用户

发布于 2014-11-05 02:21:49

我也有类似的问题,这是我选择的解决方案。

我使用encodeURIComponent(variable_Name)对来自用户的字符串数据进行编码,然后保存,然后在显示时使用decodeURIComponent(variable_Name)解码。

票数 -5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26741455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档