mysql 正则学习
基本字符匹配
select desk from dealer_info where desk regexp "82107777";. 表示匹配任意一个字符 select name from dealer_info where name regexp "a."; MySQL中的正则表达式匹配不区分大小写, 可以使用 binary来区分 select name from dealer_info where name regexp BINARY "a."; select name from dealer_info where BINARY name regexp "a.";or匹配: SELECT * FROM `card` where json_str REGEXP BINARY "a|b" [123]定义一组字符,意思是匹配1或2或3 ^ 否定一个字符集合,将匹配除指定字符外的任何东西。[^123]将匹配除这些字符外的任何东西匹配范围: [0123456789] 或 [0-9] 将匹配数字0到9 [a-z] 匹配任意字母符号alnum
文字数字字符alpha 文字字符blank 空白字符cntrl 控制字符digit 数字字符graph 图形字符lower 小写文字字符print 图形或空格字符punct 标点字符space 空格、制表符、新行、和回车upper 大写文字字符xdigit 十六进制数字字符元字符 说明* 0个或多个匹配+ 1个或多个匹配(等于 {1, })? 0个或1个匹配(等于 {0, 1}){n} 指定数目的匹配{n, } 不少于指定数目的匹配{n ,m} 匹配数目的范围(m不超过255)
匹配连在一直的4位数字:WHERE prod_name REGEXP '[[:digit:]]{4}'
^ 文本的开始
$ 文本的末尾[[:<:]] 词的开始[[:>:]] 词的结尾