Oracle PL/SQL/Regular Expressions/Case

Материал из SQL эксперт
Перейти к: навигация, поиск

[:lower:] matches lowercase characters

   <source lang="sql">

SQL> create table TestTable(

 2    ID                    VARCHAR2(4 BYTE)         NOT NULL,
 3    Description           VARCHAR2(30 BYTE)
 4  )
 5  /

Table created. SQL> SQL> SQL> insert into TestTable (ID, Description) values("1","1234 5th Street"); 1 row created. SQL> insert into TestTable (ID, Description) values("2","1 Culloden Street"); 1 row created. SQL> insert into TestTable (ID, Description) values("3","1234 Road"); 1 row created. SQL> insert into TestTable (ID, Description) values("4","33 Thrid Road"); 1 row created. SQL> insert into TestTable (ID, Description) values("5","One than another"); 1 row created. SQL> insert into TestTable (ID, Description) values("6","2003 Movie"); 1 row created. SQL> insert into TestTable (ID, Description) values("7","AAAAAAAAAAAAAAAAAA"); 1 row created. SQL> SQL> select * from TestTable; ID DESCRIPTION


------------------------------

1 1234 5th Street 2 1 Culloden Street 3 1234 Road 4 33 Thrid Road 5 One than another 6 2003 Movie 7 AAAAAAAAAAAAAAAAAA 7 rows selected. SQL> SQL> SQL> SQL> --[:lower:] matches lowercase characters. SQL> SELECT description

 2  FROM testTable
 3  WHERE NOT REGEXP_LIKE(description,"[:lower]");

DESCRIPTION


AAAAAAAAAAAAAAAAAA SQL> SQL> drop table TestTable; Table dropped. SQL> SQL> SQL>

      </source>
   
  


REGEXP_INSTR(description,"[:lower:]") > 0

   <source lang="sql">

SQL> create table TestTable(

 2    ID                    VARCHAR2(4 BYTE)         NOT NULL,
 3    Description           VARCHAR2(30 BYTE)
 4  )
 5  /

Table created. SQL> SQL> SQL> insert into TestTable (ID, Description) values("1","1234 5th Street"); 1 row created. SQL> insert into TestTable (ID, Description) values("2","1 Culloden Street"); 1 row created. SQL> insert into TestTable (ID, Description) values("3","1234 Road"); 1 row created. SQL> insert into TestTable (ID, Description) values("4","33 Thrid Road"); 1 row created. SQL> insert into TestTable (ID, Description) values("5","One than another"); 1 row created. SQL> insert into TestTable (ID, Description) values("6","2003 Movie"); 1 row created. SQL> insert into TestTable (ID, Description) values("7","Start With Letters"); 1 row created. SQL> SQL> select * from TestTable; ID DESCRIPTION


------------------------------

1 1234 5th Street 2 1 Culloden Street 3 1234 Road 4 33 Thrid Road 5 One than another 6 2003 Movie 7 Start With Letters 7 rows selected. SQL> SQL> SQL> SELECT description, REGEXP_INSTR(description,"[:lower:]")

 2  FROM testTable
 3  WHERE REGEXP_INSTR(description,"[:lower:]") > 0;

DESCRIPTION REGEXP_INSTR(DESCRIPTION,"[:LOWER:]")


-------------------------------------

1234 5th Street 12 1 Culloden Street 5 1234 Road 7 33 Thrid Road 6 One than another 3 2003 Movie 7 Start With Letters 4 7 rows selected. SQL> SQL> SQL> drop table TestTable; Table dropped. SQL> SQL>

      </source>
   
  


[:upper:] matches uppercase characters

   <source lang="sql">

SQL> create table TestTable(

 2    ID                    VARCHAR2(4 BYTE)         NOT NULL,
 3    Description           VARCHAR2(30 BYTE)
 4  )
 5  /

Table created. SQL> SQL> SQL> insert into TestTable (ID, Description) values("1","1234 5th Street"); 1 row created. SQL> insert into TestTable (ID, Description) values("2","1 Culloden Street"); 1 row created. SQL> insert into TestTable (ID, Description) values("3","1234 Road"); 1 row created. SQL> insert into TestTable (ID, Description) values("4","33 Thrid Road"); 1 row created. SQL> insert into TestTable (ID, Description) values("5","One than another"); 1 row created. SQL> insert into TestTable (ID, Description) values("6","2003 Movie"); 1 row created. SQL> insert into TestTable (ID, Description) values("7","AAAAAAAAAAAAAAA"); 1 row created. SQL> SQL> select * from TestTable; ID DESCRIPTION


------------------------------

1 1234 5th Street 2 1 Culloden Street 3 1234 Road 4 33 Thrid Road 5 One than another 6 2003 Movie 7 AAAAAAAAAAAAAAA 7 rows selected. SQL> SQL> SQL> SQL> -- [:upper:] matches uppercase characters. SQL> SELECT description

 2  FROM testTable
 3  WHERE NOT REGEXP_LIKE(description,"[:upper]");

DESCRIPTION


1234 Road AAAAAAAAAAAAAAA SQL> SQL> drop table TestTable; Table dropped. SQL> SQL>

      </source>