Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
$substrCP
$substrCPOperator di Amazon DocumentDB digunakan untuk mengekstrak substring dari string, di mana substring ditentukan sebagai rentang titik kode UTF-8 (CP). Operator ini sangat berguna ketika bekerja dengan string Unicode, karena memungkinkan Anda untuk mengekstrak substring tanpa harus khawatir tentang representasi byte yang mendasari karakter.
Berbeda dengan $substrBytes operator, yang beroperasi pada posisi byte, $substrCP operator bekerja dengan posisi titik kode. Ini membuatnya lebih mudah untuk bekerja dengan string yang berisi karakter non-ASCII, karena jumlah titik kode mungkin tidak cocok dengan jumlah byte atau karakter.
Parameter
-
string: String input dari mana untuk mengekstrak substring. -
start: Posisi titik kode awal (berbasis nol) dari mana untuk mengekstrak substring. -
length: Jumlah poin kode untuk diekstrak.
Contoh (MongoDB Shell)
Dalam contoh ini, kita akan menggunakan $substrCP operator untuk mengekstrak singkatan status dari string yang berisi lokasi meja karyawan.
Buat dokumen sampel
db.people.insert([ { "_id": 1, "first_name": "Jane", "last_name": "Doe", "Desk": "12 Main St, Minneapolis, MN 55401" }, { "_id": 2, "first_name": "John", "last_name": "Doe", "Desk": "456 Oak Rd, New Orleans, LA 70032" }, { "_id": 3, "first_name": "Steve", "last_name": "Smith", "Desk": "789 Elm Ln, Bakersfield, CA 93263" } ]);
Contoh kueri
db.people.aggregate([ { $project: { "state": { $substrCP: ["$Desk", 25, 2] } } } ]);
Keluaran
{ "_id" : 1, "state" : "MN" }
{ "_id" : 2, "state" : "LA" }
{ "_id" : 3, "state" : "CA" }
Dalam contoh ini, kita tahu bahwa singkatan status dimulai pada titik kode ke-25 di Desk bidang dan panjangnya 2 poin kode. Dengan menggunakan $substrCP operator, kita dapat mengekstrak singkatan status tanpa harus khawatir tentang representasi byte yang mendasarinya dari string.
Contoh kode
Untuk melihat contoh kode untuk menggunakan $substrCP perintah, pilih tab untuk bahasa yang ingin Anda gunakan: