MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Bagaimana cara mengambil data dari koleksi MongoDB di C # menggunakan Ekspresi Reguler?

Saya akan merekomendasikan menyimpan versi data Anda yang dinormalisasi, dan mengindeks/mencarinya. Kemungkinan akan jauh lebih cepat daripada menggunakan regex. Tentu, Anda akan menghabiskan lebih banyak ruang penyimpanan dengan menyertakan "john" di samping "John", tetapi akses data Anda akan lebih cepat karena Anda hanya dapat menggunakan kueri $eq standar.

Jika Anda bersikeras pada regex, saya sarankan menggunakan ^ (awal baris) dan $ (akhir baris) di sekitar istilah pencarian Anda. Namun ingat, Anda harus keluar dari nilai find agar kontennya tidak diperlakukan sebagai RegEx.

Ini akan berhasil:

string escapedFindValue = System.Text.RegularExpressions.Regex.Escape(findValue);
new BsonRegularExpression(string.Format("^{0}$", escapedFindValue), "i");

Atau jika Anda menggunakan versi kerangka kerja yang lebih baru, Anda dapat menggunakan interpolasi string:

string escapedFindValue = System.Text.RegularExpressions.Regex.Escape(findValue);
new BsonRegularExpression($"^{escapedFindValue}$", "i");



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bagaimana saya bisa meng-host Server Parse saya sendiri di Heroku menggunakan MongoDB?

  2. MongoDB C# Kueri untuk 'Suka' pada string

  3. Peningkatan Kerangka Agregasi MongoDB 2.6

  4. bagaimana saya bisa menemukan array nilai dalam agregasi $match dan mengelompokkan hasilnya?

  5. Apakah simpanan transaksi findAndModify mongoDB?