7

我正在尝试构建一个小书签并被这个问题猛烈抨击,我只是能够弄清楚:一个\u8203字符,Chrome 在我的代码块中(在粘贴到 JS 控制台后)无济于事地告诉我是一个“无效字符 ILLEGAL” ”。

幸运的是,Safari 告诉我这是一个\u8203.

我正在 Sublime Text 2 编辑器中编辑代码,并且以某种方式复制进出它(我也尝试过 TextEdit)无法删除它。

是否有某种网站可以删除除 ASCII 以外的所有字符?

当我尝试另存为 ISO 8859 但它会将其另存为 UTF-8 “因为不支持的字符”。

... 是的。这才是重点。摆脱我不受支持的邪恶角色。

我应该做些什么?在十六进制编辑器中编辑我的文件?

仅供参考,我实际上是通过重新输入代码(顺便说一下来自这个站点)来解决的。

4

4 回答 4

13

是否有某种网站可以删除除 ASCII 以外的所有字符?

你可以使用这个网站

您可以使用以下代码重新创建网站:

<!DOCTYPE html>
<html>

    <head>
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        <title>- jsFiddle demo</title>
        <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
        <link rel="stylesheet" type="text/css" href="/css/normalize.css">
        <link rel="stylesheet" type="text/css" href="/css/result-light.css">
        <style type="text/css">
            textarea {
                width: 800px;
                height: 480px;
                outline: none;
                font-family: Monaco, Consolas, monospace;
                border: 0;
                padding: 15px;
                color: hsl(0, 0%, 27%);
                background-color: #F6F6F6;
            }
        </style>
        <script type="text/javascript">
            //<![CDATA[ 
            $(function () {
                $("button").click(function () {
                    $("textarea").val(
                             $("textarea").val().replace(/[^\u0000-\u007E]/g, "")
                    );
                    $("textarea").focus()[0].select();
                });
            }); //]]>
        </script>
    </head>

    <body>
        <textarea></textarea>
        <button>Remove</button>
    </body>

</html>
于 2012-07-21T12:44:16.137 回答
6

您可以使用正则表达式过滤掉 0-127 中的所有内容。例如在 javascript 中:

text.replace(/[^\x00-\x7F]/g, "")

x00 = 0, x7f = 127

于 2015-09-02T22:14:52.057 回答
4

好吧,我能想到的最简单的方法是使用sed

sed -i 's/[^[:print:]]//g' your_script.js
//            ^^^^^ this can also be 'ascii'

或使用tr

tr -cd '\11\12\15\40-\176' < old_script.js > new_script.js
于 2012-07-19T05:32:57.393 回答
0

非技术解决方案:将您的文本粘贴到 Gmail 中的新电子邮件中,然后单击 Tx(清除格式,在格式菜单中)。为我工作。

于 2015-05-27T19:28:19.363 回答