MYSQLREGEXP_LIKE

REGEXP_LIKE(AAA, '^((\\d{3}[1-9]|\\d{2}[1-9]\\d|\\d[1-9]\\d{2}|[1-9]\\d{3})(0[1-9]|1[0-2]))$')

这句是要求什么? 里面的 \\   d{}   (0[1-9]|1[0-2]) 都是啥意思?

SQL NycA8Jih 发布于 2024-4-7 15:03 (编辑于 2024-4-7 15:03)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
NycA8JihLv2见习互助
发布于2024-4-7 15:34

这个正则表达式用于匹配年份+月份。具体解释如下:

1. `^`:表示字符串的开始。

2. `((\\d{3}[1-9]|\\d{2}[1-9]\\d|\\d[1-9]\\d{2}|[1-9]\\d{3}))`:这部分用于匹配4位的年份,可以是以下四种情况之一:

   - `\\d{3}[1-9]`:3位数字后跟一个1-9的数字。

   - `\\d{2}[1-9]\\d`:2位数字后跟一个1-9的数字,再跟一个0-9的数字。

   - `\\d[1-9]\\d{2}`:1位数字后跟一个1-9的数字,再跟两个0-9的数字。

   - `[1-9]\\d{3}`:1个1-9的数字后跟三个0-9的数字。

3. `(0[1-9]|1[0-2])`:这部分用于匹配月份,可以是01、02、...、12。

4. `$`:表示字符串的结束。

所以,这个正则表达式可以匹配一个6位数的日期,要求年份为4位数字,月份为01-12。如200101。

最佳回答
0
华莉星宸Lv6高级互助
发布于2024-4-7 15:04(编辑于 2024-4-7 15:04)
最佳回答
0
用户k6280494Lv6资深互助
发布于2024-4-7 15:04(编辑于 2024-4-7 15:05)
  • 2关注人数
  • 115浏览人数
  • 最后回答于:2024-4-7 15:34
    请选择关闭问题的原因
    确定 取消
    返回顶部