这个正则表达式是什么意思?在线等!!!

regexp_like (进院日期,✀^([0-9]{4,4}+[-]+[0-9]{1,2}+[-]+[[0-9]{1,2})$✀)
2025-06-23 04:58:16
推荐回答(1个)
回答1:

您打字时,输入有误吧?

[[0-9]{1,2})$')
应该是
[0-9]{1,2})$')

这个正则表达式的作用:筛选记录,该记录的 “进院日期” 字段符合下面的要求

分析:

  1. ^ 匹配字符串开头,$ 匹配字符串结尾。在本文正则表达式中匹配,以数字开头,且以数字结尾的字符串。

  2. [0-9]{4,4}+                    4位数字为一组,至少一组,或多组

  3. [-]+                                连接号,至少一个,或多个

  4. [0-9]{1,2}+                   1位数或2位数为一组,至少一组,或多组

  5. [-]+                                连接号,至少一个,或多个

  6. [0-9]{1,2}                     1位数或2位数

括号表示将匹配的字符串保留,以便“后向引用”。

按照这个表达式,可能匹配以下例子:

2017-04-26
20172017-----12343-----45
12345678--------544899999999-----------------------00

但我觉的既然是日期,这个正则表达式的本意是匹配下面的格式:

xxxx-x-x

xxxx-x-xx

xxxx-xx-x

xxxx-xx-xx            如:2017-04-26

楼主提问中的正则表达式,应当修改一下,从

'^([0-9]{4,4}+[-]+[0-9]{1,2}+[-]+[0-9]{1,2})$'

改为

'^([0-9]{4}-[0-9]{1,2}-[0-9]{1,2})$'