在mysql 正则查询时遇到困难,求大神帮忙
关键词比如abc
需要查询表1里,字段 title 里带有关键词 abc,同时,abc的前后一个字符不是能字母的(可以是数字或符号),试了一下这种,好像不行
求大神解答
SELECT * 
FROM  表1 
WHERE  `title` REGEXP  '[^alpha]abc[^alpha]'

解决方案 »

  1.   

    select '2 abc ' REGEXP '[[:digit:]|[:blank:]]abc[[:>:]]

    select '2abc ' REGEXP '[[:digit:]|[:blank:]]abc[[:>:]]

    select '=abc*' REGEXP '[[:<:]]abc[[:>:]]
    1 无论如何,手册总是要看的!
      

  2.   

    谢谢 xuzuning 不过在phpmyadmin里试了,不行
      

  3.   

    主要title里有字段有很多特殊字符,比如title里有这种de abc1 / bde / abfα cccc (H f)
    采用您给的正则方式则无法匹配,您看如果要 title里关键词abc,只要前一个字符和后一个字符不是字母,都需要匹配出来SELECT  'de abc1 / bde / abfα cccc (H f)' REGEXP  '[[:digit:]|[:blank:]]abc[[:>:]]'