如何通过记事本/ Sublime或Excel从文本中删除ASCII代码

时间:2015-07-14 12:12:44

标签: php sql

我在使用ASCII逗号和引号时遇到大麻烦,因为它们会导致数据库导入错误。

每当我从网站添加文本时,它也会复制其ASCII代码。

示例:

此引号与此

"

)&lt; - 此引号是ASCII字符,导致数据库导入错误,每次我需要检查并用默认引号(")<替换它/ p>

请问好吗?

2 个答案:

答案 0 :(得分:1)

方法#1

您可以使用 Notepad ++ 执行此操作。

  1. 打开要替换的文件

  2. 单击 CTRL + H

  3. 在字段Find what:中输入

  4. 在字段Replace with:中输入正常引号"

  5. 点击Replace all按钮。

  6. 方法#2

    您可以使用[^\x00-\x7F]+表达式。

    1. 打开 Notepad ++
    2. 点击 CTRL + F
    3. 选择Regular Expression
    4. Find what:字段中粘贴[^\x00-\x7F]+
    5. 点击Find next
    6. 它将找到所有非ASCII字符。因此,您可以轻松删除/替换它们。

      方法#3

      1. 打开Notepat++
      2. 点击Search
      3. 点击Find characters in range...
      4. 选择Non-ASCII Characters (128-255)
      5. 点击Find
      6. 像方法#2一样工作。

答案 1 :(得分:0)

永远不要相信用户输入是一个好方法。如果是受信任的用户复制和粘贴,或者是未知用户填写表单。

您应该始终清理您的输入。 ALWAYS。

这样的东西
function sanitise($input, $arguments = array()) {
    $input = htmlspecialchars($input, ENT_QUOTES | ENT_SUBSTITUTE);

    if(array_key_exists('STRIP_TAGS') {
        $input = strip_tags($input);
    }

    //..etc
    return $input;
}

传递您希望传递的选项(有时您可能只想删除标签,但请离开。

但最后,请过滤所有数据,并且不要依赖于您的用户记住为您完成此操作。

如果您使用的是PHP 5.4之前的PHP版本,则可以将htmlspecialchars与preg_replace交换,并将相应的ascii代码与引号匹配。

$input = preg_replace('/[\x132]/', '"', $input);