Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Oracle REGEXP_LIKE dan batasan kata

Saya yakin Anda ingin mencoba

 select 1 from dual 
  where regexp_like ('does test work here', '(^|\s)test(\s|$)');

karena \b tidak muncul dalam daftar ini:Perl-influenced Extensions di Oracle Regular Expressions

\s memastikan bahwa tes dimulai dan diakhiri dengan spasi. Namun, ini tidak cukup, karena string test juga bisa muncul di awal atau akhir string yang dicocokkan. Oleh karena itu, saya menggunakan alternatif (ditunjukkan dengan | ) ^ untuk memulai string dan $ untuk akhir string.

Pembaruan (setelah 3 tahun ke atas)... Seperti yang terjadi, saya membutuhkan fungsionalitas ini hari ini, dan menurut saya, ekspresi reguler yang lebih baik adalah (^|\s|\W)test($|\s|\W) (Karakter khusus ekspresi reguler \b yang hilang di Oracle).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apa itu catatan PLSQL di Oracle

  2. Penggunaan Ruang Tinggi Dari crfclust.bdb

  3. Oracle Mengonversi Detik ke Jam:Menit:Detik

  4. Oracle - perbarui bergabung - tabel tanpa kunci yang diawetkan

  5. Cara mempercepat loading data dari oracle sql ke pandas df