mysql 正则表达式用法(一)
记录下关于mysql中regexp 正则匹配字符串的相关用法
一、匹配字符类
[:alnum:] 任意字母和数字(同[a-zA-Z0-9])
[:alpha:] 任意字符(同[a-zA-Z])
[:blank:] 空格和制表(同[\t])
[:cntrl:] ASCII控制字符(ASCII 0到31和127)
[:digit:] 任意数字(同[0-9])
[:graph:] 与[:print:]相同,但不包括空格
[:lower:] 任意小写字母(同[a-z])
[:print:] 任意可打印字符
[:punct:] 既不在[:alnum:]又不在[:cntrl:]中的任意字符
[:space:] 包括空格在内的任意空白字符(同[\f\n\r\t\v])
[:upper:] 任意大写字母(同[A-Z])
[:xdigit:] 任意十六进制数字(同[a-fA-F0-9])
二、特定需求
- 仅匹配字符串内存在空格的情况
方法1:select case when '123 456' regexp '^[^ ]+.*[[:blank:]].*[^ ]+$' then 1 else 0 end check_status
- 仅匹配字符串两端存在空格的情况
方法1: 使用trim()函数来判断:select case when trim(check_col) != check_colthen 1 else 0 end check_status
方法2: 正则判断select case when '123' regexp '^ | $' then 1 else 0 end check_status
- 匹配非内部空格,包含两端空格以及\f\n\r\t\v等字符的情况
方法:select case when check_col regexp '[[:space:]]' and check_colnot regexp '^[^ ]+.*[[:blank:]].*[^ ]+$' then 1 else 0 end check_status
原文地址:https://blog.csdn.net/qq_42392337/article/details/135914648
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.kler.cn/a/226835.html 如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.kler.cn/a/226835.html 如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!