close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 12 years ago

Last modified 12 years ago

#1695 assigned defect

Error en TextMatch — at Version 2

Reported by: Pedro Gea Owned by: Jorge
Priority: high Milestone: Mantainance
Component: Text Version: 3.1
Severity: critical Keywords:
Cc:

Description (last modified by Jorge)

Se encuentra un error inesperado al usar TextMatch con textos que contienen el carácter "[":

Real TextMatch("(RA", "(R*"); // -> 1
Real TextMatch("[RA", "[R*"); // -> 0

Change History (2)

comment:1 Changed 12 years ago by Pedro Gea

Owner: changed from Víctor de Buen Remiro to Jorge
Status: newassigned

comment:2 Changed 12 years ago by Jorge

Description: modified (diff)

El cambio [4326] introdujo una implementación de TextMatch que admite coincidencia con cualquier caracter perteneciente aun conjunto de caracteres en la cadena patrón. Un conjunto de caracteres se delimita con los caracteres [ y ] en ese sentido tienen un significado especial en la cadena patrón.

Si queremos introducir el caracter explicito [ debemos escaparlo con el caracter \, por ejemplo:

Real TextMatch("[RA", "\[R*");

Si en el conjunto dec caracteres aparece la secuencia x-y entonces se considera cualquier caracter entre x e y incluyendo ambos.

Ejemplo de expresiones que usan la secuencia [ ]:

Real TextMatch("abaaab", "[a-b]*")
Real TextMatch("1234.2323", "[0-9]*.[0-9]*")

Es cierto que esto debía estar documentado con el cambio. Vamos a incluirlo en la documentación de la función y estará disponible en la siguiente versión de TOL.

Note: See TracTickets for help on using tickets.