Oracle PL/SQL/Regular Expressions/Alpha — различия между версиями

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

Текущая версия на 10:02, 26 мая 2010

[:alpha:] matches characters only

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>
SQL> -- Bracketed Classes
SQL>
SQL> -- [:alpha:] matches characters only.
SQL> SELECT description
  2  FROM testTable
  3  WHERE NOT REGEXP_LIKE(description,"[[:alpha]]");
DESCRIPTION
------------------------------
1234 5th Street
1 Culloden Street
1234 Road
33 Thrid Road
One than another
2003 Movie
Start With Letters
7 rows selected.
SQL>
SQL>
SQL> drop table TestTable;
Table dropped.
SQL>
SQL>
SQL>



REGEXP_REPLACE("Oracle www.java2s.com", "lalpha:{4}", "demo")

SQL>
SQL> -- REGEXP_REPLACE(x, pattern [, replace_string [, start [, occurrence [, match_option]]]])
SQL>
SQL> SELECT REGEXP_REPLACE("Oracle www.sqle.ru", "l[[:alpha:]]{4}", "demo") AS result FROM dual;
RESULT
---------------------
Oracle www.sqle.ru
SQL>
SQL>



REGEXP_SUBSTR("www.java2s.com Oracle","lalpha:{4}")

SQL>
SQL> -- Returns the substring
SQL>
SQL> SELECT REGEXP_SUBSTR("www.sqle.ru Oracle","l[[:alpha:]]{4}") AS result FROM dual;
R
-

SQL>
SQL>