我正在开发一个小型应用程序,在该应用程序中,我的表中有一个列,在该列中,我必须找到具有这种格式的值的所有记录,其中d是数字(1-9)。
例如,我想找出具有这种'18/32/23'格式的值的数据。
所以我想知道,这种格式的正则表达式是什么?
注意:这不是日期格式。我正在使用MySQL。
发布于 2017-09-10 13:51:50
你试过这样做吗?
SELECT * FROM YOUR_TABLE_NAME WHERE YOUR_COLUMN_NAME REGEXP '^[0-9]{2}\/[0-9]{2}\/[0-9]{2}$';发布于 2017-09-10 14:13:27
将所有具有值的记录
成'dd/dd/dd‘格式,其中d是数字(1-9)。
如果我理解得很好,您希望像txt这样的字段具有或包含特殊格式的部分的所有记录-数字从1到9: 1-9/1-9/1-9 -:
select *
from t
where `txt` regexp '[^0-9][1-9]{2}\/[1-9]{2}\/[1-9]{2}[^0-9]';若要进行精确匹配,请改用以下查询
select *
from t
where `txt` regexp '^[1-9]{2}\/[1-9]{2}\/[1-9]{2}$';正则表达式解释:
^ from start of statement
[1-9]{2} 1-9 two times
\/ / character
[1-9]{2} 1-9 two times
\/ / character
[1-9]{2} 1-9 two times
$ end of statementhttps://stackoverflow.com/questions/46137643
复制相似问题