mysql57 正则查询 库表中某个文本字段中包含手机号或身份证号的数据
可以使用MySQL正则表达式函数REGEXP来实现:
SELECT * FROM table_name WHERE column_name REGEXP '^(13|15|17|18|19)[0-9]{9}|[1-9][0-9]{16}([0-9]|[Xx])$';
解释一下:
- ^(13|15|17|18|19)[0-9]{9}:以13、15、17、18或19开头的11位手机号码
- |:或者
- [1-9][0-9]{16}([0-9]|[Xx]):18位身份证号码,最后一位可以是数字或字母X或x
将上述语句中的table_name和column_name替换为实际的表名和字段名即可。
原文地址: https://www.cveoy.top/t/topic/fk0N 著作权归作者所有。请勿转载和采集!