Funciones XSLT y XPath

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

matches

XPath

 

La función fn:matches comprueba si la cadena introducida en el primer argumento coincide con la expresión regular introducida en el segunto argumento. Si esto es así la función devolverá el valor booleano "true". La expresión regular coincidirá con la cadena introducida si ésta aparece en cualquier punto de la misma. La expresión se introducirá con los metacaracteres ^ y $, que indicarán el principio y el final de la misma.

En la cadena se tendrán en cuenta por defecto las letras mayúsculas y minúsculas. Por el contrario se ignorarán los saltos de linea. En el tercer argumento se podrán modificar los valores predeterminados. A través de los valores de flags de este argumento se podrá, por ejemplo, con "i" no distinguir entre mayúsculas y minúsculas, con "m" se podrá tener en cuenta los saltos de linea, o con "x" se ignorará los espacios en blanco.

 

Argumentos

Cadena a comprobar

Es obligatorio, pero puede ser una secuencia vacía.

Tipo: xs:string

 

Expresión regular a utilizar para examinar la cadena de entrada

Es obligatorio, pero puede ser una secuencia vacía.

Tipo: xs:string

 

Valor de flag para definir el modo

Opcional

Tipo: xs:string

 

Valor de salida

Valor booleano. Se devolverá "true" si la expresión regular coincide.

Tipo: xs:boolean

 

 

Ejemplo

matches('ab', 'b')

Resultado: true

 

 

Ejemplo

matches('ab', '')

Resultado: true

 

 

Ejemplo

matches('ab', 'B')

Resultado: false

Se distingue entre mayúsculas y minúsculas por defecto.

 

 

Ejemplo

matches('ab', 'B', 'i')

Resultado: true

Con el valor de flag 'i' no se distinguirá entre mayúsculas y minúsculas.

 

 

Ejemplo

matches('holamundo', 'ndo$')

Resultado: true

La expresión es correcta puesto que la cadena termina con "ndo". Esta construcción se puede sustituir mediante fn:ends-with.

 

 

Ejemplo

matches('holamundo', '^ndo$')

Resultado: false

 

 

Ejemplo

matches('holamundo', '^hol')

Resultado: true

La expresión es correcta puesto que la cadena comienza con "hol". Esta construcción se puede sustituir mediante fn:starts-with.

 

 

Ejemplo

matches('holamundo', 'hola mundo')

Resultado: false

Normalmente se tiene en cuenta los espacios en blanco.

 

 

Ejemplo

matches('holamundo', 'hola mundo', 'x')

Resultado: true

Con el valor de flag 'x' se ignorará los espacios en blanco.

  > Volver a la referencia alfabética de XSLT y XPATH