Compartir a través de


Expresiones de token de FQL

Última modificación: viernes, 04 de noviembre de 2011

Hace referencia a: SharePoint Server 2010

En este artículo
Expresiones de caracteres comodín
Expresiones de términos numéricos
Palabras reservadas y caracteres especiales

Las expresiones de token son palabras, frases o valores numéricos que se comparan con el índice.

Una expresión de token de texto puede ser una sola palabra o una frase entre comillas dobles.

Una expresión de token numérica puede ser un solo valor o una expresión de intervalo de valores.

Expresiones de caracteres comodín

Una expresión de caracteres comodín indica un solo término o una frase que incluye uno o varios de los siguientes caracteres comodín:

  • Un asterisco ("*"), que indica que deben coincidir cero o más caracteres (sin incluir espacios en blanco)

  • Un signo de interrogación ("?"), que indica que debe coincidir un solo carácter (sin incluir espacios en blanco)

El lenguaje de consulta FAST (FQL) admite la búsqueda de caracteres comodín para las propiedades administradas de texto individuales y los índices de texto completo.

Ejemplos de expresiones de caracteres comodín

La siguiente expresión de consulta busca los elementos que contienen la palabra "Shakespeare":

shak?sp*r*

Esta es una lista de los usos válidos de expresiones de caracteres comodín en FQL:

  • text*

  • *text

  • *text*

  • te?t

  • *te?t

  • string("this examp*")

  • string("this *ample")

  • string("this *ampl*")

  • string("this exam?le")

  • string("thi* exam?le")

Nota

Los ejemplos anteriores contienen una sintaxis de carácter comodín de FQL válida. Debe evitar el uso de expresiones que coincidan con muchas palabras del índice, como expresiones que comiencen por un término de carácter comodín. Tales consultas se pueden usar cuando consulte propiedades administradas con una cantidad de contenido limitada, pero, por lo general, no devuelven ningún resultado si consulta un índice de texto completo.

Los caracteres comodín no pueden coincidir con caracteres de espacios en blanco. La siguiente tabla contiene ejemplos de expresiones de caracteres comodín que posiblemente no reporten las coincidencias esperadas.

Tabla 1. Ejemplos de expresiones de caracteres comodín y la forma en que establecen coincidencias con el contenido

Consulta

Qué no coincide con la consulta

string("this*examp*", mode="PHRASE")

string("this?example", mode="PHRASE")

"This example text shows wildcard terms"

El término de carácter comodín no coincide con el espacio en blanco (entre This y example).

string("Example?This", mode="PHRASE")

"Example:This is some text"

El término de carácter comodín no coincide con el signo de dos puntos (entre Example y This). Los dos puntos se consideran un espacio en blanco.

Si lo desea, puede usar los parámetros STRING, minexpansion y maxexpansion para especificar el intervalo de la expansión del carácter comodín. Las siguientes expresiones son equivalentes entre sí.

any("prefix","prefix?","prefix??","prefix???","prefix????")

string("prefix*",maxexpansion=4)

Expresiones de términos numéricos

Cada expresión de término numérico debe incluir una especificación de propiedad de un tipo de datos de esquema de índice compatible. En la siguiente tabla se enumeran los tipos de datos numéricos que se pueden usar en FQL.

Tabla 2. Tipos de datos numéricos que se pueden usar en FQL

Tipo de FQL

Tipos de esquema de índice compatibles

Descripción

Int

Integer

Número entero de 64 bits.

float

Float

Decimal

Número de punto flotante (doble precisión) de 64 bits.

Datetime

Datetime

Valor de fecha y hora.

La compatibilidad de fecha y hora en FQL habilita las mismas operaciones numéricas en los valores de fecha y hora que en otros valores numéricos.

Expresiones de consulta de fecha y hora

FQL proporciona el tipo de datos datetime para la fecha y la hora.

En las consultas se pueden usar los siguientes formatos de datetime compatibles con el estándar ISO 8601:

  • AAAA-MM-DD

  • AAAA-MM-DDThh:mm:ss

  • AAAA-MM-DDThh:mm:ssZ

En estos formatos de datetime:

  • AAAA especifica un año de cuatro dígitos.

    Nota

    Solo se admiten años de cuatro dígitos.

  • MM especifica un mes de dos dígitos. Por ejemplo, 01 = enero.

  • DD especifica un día del mes de dos dígitos (01 a 31).

  • T especifica la letra "T".

  • hh especifica una hora de dos dígitos (00 a 23). No se permite la indicación a.m./p.m.

  • mm especifica un minuto de dos dígitos (00 a 59).

  • ss especifica a un segundo de dos dígitos (00 a 59).

Todos los valores de fecha y hora deben especificarse según el formato UTC (hora universal coordinada), también conocido como zona horaria GMT (hora del meridiano de Greenwich). El identificador de zona horaria UTC (un carácter final "Z") es opcional.

Palabras reservadas y caracteres especiales

Las siguientes palabras se encuentran reservadas en FQL.

and, or, any, andnot, count, decimal, rank, near, onear, int, in32, int64, float, double, datetime, max, min, range, phrase, scope, filter, not, string, starts-with, ends-with, equals, count

Si desea especificar alguna de estas palabras como términos en una expresión de consulta, deberá escribirla entre comillas dobles, tal y como se muestra en los siguientes ejemplos:

  • or("any", "and", "rank")

  • string("any and rank", mode="OR")

  • phrase(this, is, a, "phrase")

SugerenciaSugerencia

Los caracteres y palabras reservadas no distinguen mayúsculas de minúsculas, pero se recomienda usar caracteres en minúsculas de cara a una posible compatibilidad con futuras versiones.

FQL no siempre requiere que las cadenas se escriban entre comillas dobles. Por ejemplo, and(cat, dog) es una cadena de FQL válida, aunque cat y dog no se encuentren entre comillas dobles. Sin embargo, se recomienda usar comillas dobles para evitar conflictos con las palabras reservadas.

Los términos de consulta se convierten en tokens en función de la configuración regional. Durante el proceso de tokenización se quitan ciertos caracteres especiales, lo cual hace que expresiones de FQL como las siguientes sean equivalentes entre sí.

and("[king]", "<queen>")

and("king", "queen")

Cuando una consulta incluye términos de una entrada de usuario o de otra aplicación, use el operador string("<query terms>", mode="AND|OR|PHRASE") para evitar conflictos con las palabras reservadas en el lenguaje de consulta. También debe quitar las comillas dobles, si las hubiera, de la consulta proporcionada por el usuario.

Vea también

Conceptos

Introducción a la integración de consultas de FAST Search

Referencia de sintaxis del lenguaje de consulta FAST (FQL)

Especificación de la propiedad FQL

Operadores de lenguaje de consulta FAST (FQL)

Lenguaje de consulta simple FQL

Referencia de sintaxis FQL (ABNF)