Altova MapForce 2026 Enterprise Edition

Crea una expresión regular BSON (como bson:regex) a partir de un patrón de búsqueda y una cadena de reglas de coincidencia (opciones).

MF_Func_Lib_BSON_RegexFunc3

 

Lenguajes

Built-In

 

Parámetros

Nombre

Tipo

Descripción

pattern

xs:string

Una cadena UTF-8 que define el patrón de expresión regular utilizado para la coincidencia.

opciones

xs:string

Una cadena de caracteres que determina el comportamiento de coincidencia. Estos caracteres deben proporcionarse en orden alfabético (por ejemplo, «im» en lugar de «mi») para garantizar una representación BSON coherente.

 

Opciones

Estas son las opciones compatibles:

 

i (sin distinción entre mayúsculas y minúsculas): busca coincidencias tanto en mayúsculas como en minúsculas (por ejemplo, A encuentra a).

m (multilínea): hace que los símbolos ^ y $ coincidan con el inicio y el final de cada línea, en lugar de con el inicio y el final de toda la cadena.

s (Dotall): permite que el carácter punto (.) encuentre cualquier cosa, incluidos los caracteres de salto de línea.

u (Unicode): habilita la compatibilidad con Unicode para clases de caracteres abreviadas como \w (caracteres de palabra) y \d (dígitos).

x (detallado): ignora los espacios en blanco dentro del patrón y admite comentarios (que comienzan por #), lo que facilita la lectura de patrones complejos.

 

Ejemplo

Este ejemplo muestra cómo utilizar la función to-regex para filtrar datos de MongoDB (imagen siguiente). Nuestro objetivo es filtrar la información sobre los equipos de carreras y mostrar únicamente aquellos equipos que incluyan la palabra «Mercedes» en su nombre:

 

1.En primer lugar, configuramos el componente WHERE/ORDER de SQL/NoSQL de la siguiente manera:

 

oFiltro:

 

{

 "name" : @name

}

 

oEl parámetro name se define como de tipo «regex» porque recibe la expresión regular BSON de la función to-regex.

oLos resultados filtrados están configurados para ordenarse por el campo name en orden ascendente.

 

2.En segundo lugar, añadimos la función to-regex y definimos sus parámetros:

 

oPatrón: .*mercedes.*, donde .* representa cualquier carácter una o más veces.

oOpciones: i, lo que significa que la búsqueda no distingue entre mayúsculas y minúsculas.

 

3.En tercer lugar, conectamos el resultado de la función to-regex al parámetro name del componente WHERE/ORDER de SQL/NoSQL para ejecutar la búsqueda.

MF_BSON-to-regex_Example

Obtenemos el siguiente resultado:

 

<teams>

  <team id="305" name="Aston Martin Aramco Mercedes" nation="UK" points="94">

     <driver id="109" name="Fernando Alonso" nation="ES" since="2024-01-01T00:00:00" points="58"></driver>

     <driver id="110" name="Lance Stroll" nation="CA" since="2024-01-01T00:00:00" points="36"></driver>

  </team>

  <team id="301" name="McLaren Mercedes" nation="UK" points="666">

     <driver id="101" name="Lando Norris" nation="UK" since="2024-01-01T00:00:00" points="282"></driver>

     <driver id="102" name="Oscar Piastri" nation="AU" since="2024-01-01T00:00:00" points="384"></driver>

  </team>

  <team id="304" name="Mercedes" nation="DE" points="468">

     <driver id="107" name="Lewis Hamilton" nation="UK" since="2024-01-01T00:00:00" points="240"></driver>

     <driver id="108" name="George Russell" nation="UK" since="2024-01-01T00:00:00" points="228"></driver>

  </team>

  <team id="309" name="Williams Mercedes" nation="UK" points="17">

     <driver id="117" name="Alexander Albon" nation="TH" since="2024-01-01T00:00:00" points="12"></driver>

     <driver id="118" name="Logan Sargeant" nation="US" since="2024-01-01T00:00:00" points="5"></driver>

  </team>

</teams>

 

© 2020-2026 Altova GmbH