【问题标题】:MySQL regular expressionMySQL 正则表达式
【发布时间】:2011-06-27 15:02:47
【问题描述】:

请建议更改正则表达式 '^({0,1}{0,1}){0,1}[7-9][0-9]{0,1}{0,1}{0,1}[0-9]{1}[0-9]{7}$' 以与 MySQL 语句一起使用。
这个表达式使用 Java 完美,但使用 MySQL 失败。该模式是匹配一个以 [7-9] 开头的 10 位数字。

我执行了 MySQL 语句:

select '11' REGEXP '^({0,1}{0,1}){0,1}[7-9][0-9]{0,1}{0,1}{0,1}[0-9]{1}[0-9]{7}$'

但它返回以下错误:

ERROR 1139 (42000): 从正则表达式中得到错误“重复操作符操作数无效”

【问题讨论】:

    标签: java mysql regex


    【解决方案1】:

    '[7-9]\d{9}',也许吧?

    编辑:等等,不,我猜 \d 在 MySQL 正则表达式中无效,所以 '^[7-9][[:digit:]]{9}$'

    开头的 ({0,1}{0,1}){0,1} 位究竟是什么意思?

    【讨论】:

      猜你喜欢
      • 2020-08-05
      • 1970-01-01
      • 2011-10-05
      • 2012-01-06
      • 1970-01-01
      • 2011-01-31
      • 2013-02-10
      • 2013-01-03
      • 2012-10-08
      相关资源
      最近更新 更多