zoukankan      html  css  js  c++  java
  • MySQL Regexps

     

    You have seen MySQL pattern matching with LIKE ...%. MySQL supports another type of pattern matching operation based on regular expressions and the REGEXP operator. If you are aware of PHP or PERL, then it's very simple for you to understand because this matching is very similar to those scripting regular expressions.

    Following is the table of pattern, which can be used along with REGEXP operator.

    Pattern	What the pattern matches
    ^	Beginning of string
    $	End of string
    .	Any single character
    [...]	Any character listed between the square brackets
    [^...]	Any character not listed between the square brackets
    p1|p2|p3	Alternation; matches any of the patterns p1, p2, or p3
    *	Zero or more instances of preceding element
    +	One or more instances of preceding element
    {n}	n instances of preceding element
    {m,n}	m through n instances of preceding element
    

      

    Examples:

    Now based on above table, you can device various type of SQL queries to meet your requirements. Here, I'm listing few for your understanding. Consider we have a table called person_tbl and it's having a field called name:

    Query to find all the names starting with 'st'

    mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';
    

      

    Query to find all the names ending with 'ok'

    mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';
    

      

    Query to find all the names, which contain 'mar'

    mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';
    

      

    Query to find all the names starting with a vowel and ending with 'ok'

    mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';
    

      

  • 相关阅读:
    1.1图形验证码的生成
    1.3蓝图导入问题
    1.2数据库迁移
    1.1首页显示
    1.3 日志配置以及蓝图的抽取
    1.2 app工厂以及db问题的解决
    每日总结
    每日总结
    每日总结
    每日总结
  • 原文地址:https://www.cnblogs.com/hephec/p/4570537.html
Copyright © 2011-2022 走看看