【问题标题】:Having a little trouble with my RegEx today今天我的正则表达式有点问题
【发布时间】:2014-03-20 16:13:42
【问题描述】:

我今天在 RegEx 上玩得很开心

\('[\d',]+

在字符串中:

INSERT INTO `order_status_histories` VALUES ('3602','52efabe9-5f8c-4512-a994-3227c63dd20e','1','','Order recieved','2014-02-03 16:47:05','2014-02-03 16:47:05'),('3603','52eff713-54fc-4be0-9389-68d5c63dd20e','1','','Order recieved','2014-02-03 22:07:47','2014-02-03 22:07:47'),('3604','52effd1a-bc14-4095-97fd-6d46c63dd20e','1','','Order recieved','2014-02-03 22:33:30','2014-02-03 22:33:30')

正如你所看到的,这是一个插入语句,但是,第一个值是记录的 ID,我不需要插入,所以我试图找到所有这些,然后简单地将它们清空......但我需要 #1 得到那个数字、2 个 ' 字符和它之后的 , 才能这样做......所以我想我会从开头的 ( 开始。

我在这里发布的正则表达式正在抓取我需要的东西,但有点额外......它似乎正在抓取这个('3670','5304(例如在第一个可插入记录中)

我怎样才能在这里做我需要的事情?

【问题讨论】:

    标签: php mysql regex


    【解决方案1】:

    \('\d+', 怎么样 - 如此明确地寻找数字,然后是 ' 然后是 ,

    【讨论】:

      【解决方案2】:

      字符类 [\d',] 没有做你想做的事 - 它匹配第二个字段的开始引号和它后面的十进制数字,直到你得到一个字母

      【讨论】:

        猜你喜欢
        • 2012-02-24
        • 2013-09-13
        • 1970-01-01
        • 2013-04-11
        • 2014-08-26
        相关资源
        最近更新 更多