Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

349
Vistas
PyMongo: campo de documento de coincidencia de expresiones regulares contra la variable de python

Tengo una base de datos con documentos con este formato:

 document1: "source_dir": [ "D:\dir1", "D:\dir2" ] document2: "source_dir": [ "D:\dir3", "D:\dir4" ]

Y en Python tengo esta variable de ruta:

 path = "D:\dir1\testFile.txt"

¿Cómo puedo consultar la base de datos usando la variable "ruta" para que el valor devuelto sea el documento cuyo campo de matriz "source_dir" contiene un elemento que coincide con el inicio del contenido de la variable de ruta?

En este caso, el valor devuelto sería document1, ya que su campo source_dir contiene D:\dir1 y la ruta comienza con D:\dir1.

Gracias.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Puede utilizar el operador de agregación $indexCP para buscar una cadena en busca de una subcadena. El truco aquí es invertir la búsqueda, usando el valor source_dir para buscar en la variable.

Por ejemplo:

 fullpath = "D:\\dir1\\testFile.txt" pipeline = [ {"$unwind": "$source_dir"}, {"$match":{ "$expr":{ "$ne":[{"$indexOfCP":[fullpath, "$source_dir"]}, -1] }}}] result = client.dbname.collname.aggregate(pipeline) for doc in result: print(doc)

Consulte también canalización de agregación para encontrar más operadores

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda