开发者社区> 问答> 正文

从MySQL中的字符串中删除引号和逗号

我正在从CSV文件中导入一些数据,并且数字大于1000变成1,100等。

从中删除引号和逗号的一种好方法是什么,以便我可以将其放入int字段中?

编辑:

数据实际上已经在MySQL表中,因此我需要能够使用SQL。对不起,混淆了。

问题来源于stack overflow

展开
收起
保持可爱mmm 2019-11-15 15:32:30 1077 0
1 条回答
写回答
取消 提交回答
  • Daniel和Eldila的回答有一个问题:他们删除了整个文件中的所有引号和逗号。

    当我必须要做类似的事情时,我通常要做的是首先用制表符替换所有分隔的引号和(通常)分号。

    搜索: “;” 替换: \ t 由于我知道受影响的值将在哪一列中,因此我将再次搜索并替换:

    搜索: ^([\ t] +)\ t([\ t] +)\ t([0-9] +),([0-9] +)\ t 替换: \ 1 \ t \ 2 \ t \ 3 \ 4 \ t ...给定带逗号的值在第三列。

    您需要以“ ^”开头,以确保它从行首开始。然后,您重复([0-9] +)\ t的次数就是您想保留的原样。

    ([[0-9] +),([0-9] +)在存在一个数字,一个逗号和另一个数字的位置搜索值。

    在替换字符串中,我们使用\ 1和\ 2只是保留已编辑行中的值,并用\ t(制表符)将它们分开。然后,我们将\ 3 \ 4(之间没有制表符)放在数字的两个组成部分之间,并且不带逗号。之后的所有值将保留。

    如果您需要文件中用分号分隔元素,则可以继续使用分号替换选项卡。但是,如果您忽略引号,则必须确保文本值本身不包含任何分号。这就是为什么我更喜欢使用TAB作为列分隔符。

    我通常在支持RegExp的普通文本编辑器(EditPlus)中执行此操作,但是相同的regexp可以在任何编程语言中使用。

    2019-11-15 15:32:53
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像