zoukankan      html  css  js  c++  java
  • 正则表达式

    . 匹配除换行符之外的任意字符
    ? 匹配前面的子表达式零次或一次
    + 匹配前面的子表达式一次或多次
    * 匹配前面的表达式零次或多次

    ^ ^abc,匹配以abc开头的字符串
    $ abc$,匹配以abc结尾的字符串

    [] 字符集合中任一个

    [[:alpha:]] 任何字母
    [[:digit:]] 任何数字
    [[:space:]] 任何白字符(空格、制表符)
    [[:punct:]] 任何标点符号
    [[:lower:]] 任何小写字母
    [[:upper:]] 任何大写字母
    [[:punct:]] 任何标点符号

    mysql:rlike
    字母不区分大小写

    --查找以a开头的姓名
    select * from stu
    where name rlike '^a';

    --找到以字母开头姓名
    select * from stu
    where name rlike '[1]';

    --以数字开头
    select * from stu
    where name rlike '[2]';

    Oracle:
    where regexp_like(字段,正则表达式)
    字母区分大小写

    --找到以小写字母开头的
    select * from stu
    where regexp_like(name,'[3]');:

    --找到以大写字母开头的
    select * from st
    where regexp_like(name,'[4]');

    --找到以字母开头并且以字母结尾(包含单个字母)
    select * from stu
    where regexp_like(name,'[5].*[a-z,A-Z]$') or regexp_like(value,'[a-z,A-Z]');

    --找到字符串只包含字母
    select * from exp
    where regexp_like(value,'[6]*$');

    .在数据中查找仅仅包含数字的数据
    select * from exp
    where regexp_like(value,'[7]*$');

    select * from exp
    where regexp_like(value,'[8]*$');

    .在数据中查找包含标点符号的数据
    select * from exp
    where regexp_like(value,'[[:punct:]]');

    .在数据中查找以字母开头,数字结尾的数据
    select * from exp
    where regexp_like(value,'[9].*[0-9]$');

    .在数据中查找以字母开头,字母结尾并包含数字的数据
    select * from exp
    where regexp_like(value,'[10]') and regexp_like(value,'[0-9]+') and regexp_like(value,'[a-zA-Z]$');

    .在数据中查找全为大写字母的数据
    select * from exp
    where regexp_like(value,'[11]*$');

    .在数据中查找以数字开头,并包含小写字母的数据
    select * from exp
    where regexp_like(value,'[12]') and regexp_like(value,'[[:lower:]]+')

    .在数据中查找仅仅包含数字、空格和字母的数据
    select * from exp
    where regexp_like(value,'[0-9]+')
    and regexp_like(value,'[ ]+')
    and regexp_like(value,'[a-zA-Z]+');

    select * from exp
    where regexp_like(value,'[13]+$')

    select * from exp
    where regexp_like(value,'[14]+$')
    and regexp_like(value,'[0-9]+')
    and regexp_like(value,'[ ]+')
    and regexp_like(value,'[a-zA-Z]+');

    .在人员表中查找人员编号为奇数的人
    select * from emp
    where empid like '%1' or empid like '%3'
    or empid like '%5' or empid like '%7'
    or empid like '%9';

    select * from emp
    where regexp_like(empid,'[15]$');


    1. a-z ↩︎

    2. 0-9 ↩︎

    3. a-z ↩︎

    4. A-Z ↩︎

    5. a-z,A-Z ↩︎

    6. a-z,A-Z ↩︎

    7. 0-9 ↩︎

    8. [:digit:] ↩︎

    9. a-z,A-Z ↩︎

    10. a-z,A-Z ↩︎

    11. [:upper:] ↩︎

    12. 0-9 ↩︎

    13. a-zA-Z0-9 ↩︎

    14. a-zA-Z0-9 ↩︎

    15. 13579 ↩︎

  • 相关阅读:
    PAT 甲级 1126 Eulerian Path (25 分)
    PAT 甲级 1126 Eulerian Path (25 分)
    PAT 甲级 1125 Chain the Ropes (25 分)
    PAT 甲级 1125 Chain the Ropes (25 分)
    PAT 甲级 1124 Raffle for Weibo Followers (20 分)
    PAT 甲级 1124 Raffle for Weibo Followers (20 分)
    PAT 甲级 1131 Subway Map (30 分)
    PAT 甲级 1131 Subway Map (30 分)
    AcWing 906. 区间分组 区间贪心
    AcWing 907. 区间覆盖 区间贪心
  • 原文地址:https://www.cnblogs.com/TD1900/p/11754330.html
Copyright © 2011-2022 走看看