OCP1z0-047 : Regex--- REGEXP_REPLACE 函數

來源:互聯網
上載者:User

這題又是考Regex,我們先根據題意,操作如下:

hr@OCM> col "PHONE NUMBER" for a50  hr@OCM> SELECT phone_number,REGEXP_REPLACE(phone_number,'([[:digit:]]{3})\.([[:digit:]]{3})\.([[:digit:]]{4})','(\1) \2-\3') "PHONE NUMBER"  2  FROM employees;        PHONE_NUMBER         PHONE NUMBER  -------------------- --------------------------------------------------  650.507.9833         (650) 507-9833  650.507.9844         (650) 507-9844  515.123.4444         (515) 123-4444  011.44.1644.429264   011.44.1644.429264  011.44.1644.429263   011.44.1644.429263  011.44.1644.429262   011.44.1644.429262  省略結果。。。。。  650.501.4876         (650) 501-4876  650.507.9811         (650) 507-9811  650.507.9822         (650) 507-9822        107 rows selected.

根據查詢結果可以得出正確答案是:C
*************************************************************

REGEXP_REPLACE函數

讓我們首先看一下傳統的REPLACE SQL函數,它把一個字串用另一個字串來替換。假設您的資料在本文中有不必要的空格,您希望用單個空格來替換它們。利用REPLACE函數,您需要準確地列出您要替換多少個空格。然而,多餘空格的數目在本文的各處可能不是相同的。下面的樣本在Joe和Smith之間有三個空格。REPLACE函數的參數指定要用一個空格來替換兩個空格。在這種情況下,結果在原來的字串的Joe和Smith之間留下了一個額外的空格。

SELECT REPLACE('Joe Smith',' ', ' ')  AS replace  FROM dual  REPLACE  ---------  Joe Smith

REGEXP_REPLACE函數把替換功能向前推進了一步,其文法在表 9中列出。以下查詢用單個空格替換了任意兩個或更多的空格。( )子運算式包含了單個空格,它可以按{2,}的指示重複兩次或更多次。

SELECT REGEXP_REPLACE('Joe Smith',  '( ){2,}', ' ')  AS RX_REPLACE  FROM dual  RX_REPLACE  ----------  Joe Smith

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.