Rumah > pangkalan data > Oracle > Oracle mengeluarkan rentetan

Oracle mengeluarkan rentetan

WBOY
Lepaskan: 2023-05-11 10:24:07
asal
2609 orang telah melayarinya

Dalam pangkalan data Oracle, kadangkala perlu mengalih keluar bahagian tertentu rentetan, seperti mengalih keluar aksara tertentu dalam rentetan, mengalih keluar ruang sebelum dan selepas rentetan, dsb. Artikel ini akan memperkenalkan cara mengalih keluar rentetan dalam Oracle.

  1. Alih keluar aksara yang ditentukan daripada rentetan

Dalam Oracle, anda boleh menggunakan fungsi REPLACE untuk mengalih keluar aksara yang ditentukan daripada rentetan. Fungsi REPLACE membolehkan pengguna menggantikan semua aksara tertentu dalam rentetan dengan rentetan lain.

Sintaksnya adalah seperti berikut:

REPLACE(string, old_string, new_string)
Salin selepas log masuk

Antaranya, rentetan ialah rentetan yang akan diganti, rentetan_lama ialah aksara yang akan diganti, dan rentetan baru ialah aksara yang diganti.

Sebagai contoh, untuk mengalih keluar aksara "c" daripada rentetan "abcde", anda boleh menggunakan pernyataan berikut:

SELECT REPLACE('abcde', 'c', '') FROM dual;
Salin selepas log masuk

Hasil keluaran pernyataan di atas ialah "abde".

  1. Alih keluar ruang sebelum dan selepas rentetan

Dalam Oracle, anda boleh menggunakan fungsi TRIM untuk mengalih keluar ruang sebelum dan selepas rentetan. Fungsi TRIM boleh digunakan untuk mengalih keluar ruang daripada rentetan tertentu, atau untuk mengalih keluar ruang daripada kedua-dua belah rentetan.

Sintaksnya adalah seperti berikut:

TRIM([LEADING | TRAILING | BOTH] [trim_string] FROM string)
Salin selepas log masuk

Antaranya, LEADING bermaksud membuang ruang di sebelah kiri, TRAILING bermaksud membuang ruang di sebelah kanan, dan KEDUA-DUA bermaksud membuang ruang pada kedua-dua belah pada masa yang sama . trim_string boleh menentukan rentetan yang akan dialih keluar Jika tidak dinyatakan, ruang akan dialih keluar secara lalai.

Sebagai contoh, untuk mengalih keluar ruang sebelum dan selepas rentetan "abcde", anda boleh menggunakan pernyataan berikut:

SELECT TRIM('   abcde  ') FROM dual;
Salin selepas log masuk

Hasil keluaran pernyataan di atas ialah "abcde".

  1. Alih keluar huruf dan nombor daripada rentetan

Dalam Oracle, anda boleh menggunakan fungsi REGEXP_REPLACE untuk mengalih keluar huruf dan nombor daripada rentetan. Fungsi ini membolehkan pengguna menggantikan aksara dalam rentetan menggunakan ungkapan biasa.

Sintaksnya adalah seperti berikut:

REGEXP_REPLACE(string, pattern, '')
Salin selepas log masuk

Antaranya, rentetan ialah rentetan yang akan diganti, corak ialah ungkapan biasa yang akan dipadankan, dan parameter ketiga ialah aksara yang diganti, berikut ialah rentetan aksara nol.

Contohnya, untuk mengalih keluar semua huruf dan nombor dalam rentetan "a1b2c3d4e5", anda boleh menggunakan pernyataan berikut:

SELECT REGEXP_REPLACE('a1b2c3d4e5', '[[:alpha:][:digit:]]', '') FROM dual;
Salin selepas log masuk

Keluaran pernyataan di atas ialah "".

  1. Alih keluar aksara Cina daripada rentetan

Dalam Oracle, anda boleh menggunakan fungsi NLSSORT dan fungsi REGEXP_REPLACE untuk mengalih keluar aksara Cina daripada rentetan.

Sintaks adalah seperti berikut:

Salin selepas log masuk
Salin selepas log masuk

Sebagai contoh, untuk mengalih keluar aksara Cina dalam rentetan "abc Chinese def", anda boleh menggunakan pernyataan berikut:

Salin selepas log masuk
Salin selepas log masuk

Output pernyataan di atas ialah "abcdef".

  1. Alih keluar teg HTML daripada rentetan

Dalam Oracle, anda boleh menggunakan fungsi DBMS_XMLGEN dan fungsi REGEXP_REPLACE untuk mengalih keluar teg HTML daripada rentetan.

Sintaksnya adalah seperti berikut:

REGEXP_REPLACE(DBMS_XMLGEN.getXMLType(string).getStringVal(), '<[^>]+>', '')
Salin selepas log masuk

Antaranya, rentetan ialah rentetan yang akan diganti, DBMS_XMLGEN.getXMLType(string).getStringVal() menukar rentetan kepada jenis XMLType, < 1+> ialah ungkapan biasa yang sepadan dengan semua teg HTML.

Sebagai contoh, untuk mengalih keluar semua teg dalam rentetan HTML berikut:

<body>
  <div class="container">
    <h1>Hello world!</h1>
    <p>This is a paragraph.</p>
  </div>
</body>
Salin selepas log masuk

Anda boleh menggunakan pernyataan berikut:

SELECT REGEXP_REPLACE(DBMS_XMLGEN.getXMLType('<body><div class="container"><h1>Hello world!</h1><p>This is a paragraph.</p></div></body>').getStringVal(), '<[^>]+>', '') FROM dual;
Salin selepas log masuk

Keluaran pernyataan di atas ialah "Hello world ! Ini adalah perenggan."

Ringkasan

Artikel ini memperkenalkan cara mengalih keluar rentetan dalam Oracle. Sama ada untuk mengalih keluar aksara tertentu, mengalihkan ruang, mengalih keluar huruf dan nombor, mengalih keluar aksara Cina atau mengalih keluar tag HTML, Oracle menyediakan fungsi dan ungkapan biasa yang sepadan. Saya percaya bahawa pembaca boleh memilih dan menggunakan mengikut situasi tertentu dalam aplikasi praktikal.


  1. >

Atas ialah kandungan terperinci Oracle mengeluarkan rentetan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan