Caracteres especiales - Comilla simple

42 views
Skip to first unread message

Mikel Gómez

unread,
Feb 21, 2006, 12:35:05 PM2/21/06
to Foros focus
Cuando asignamos un valor alfanumérico a una variable o a un campo en
FOCUS o WebFOCUS, se utiliza la comilla simple como delimitador, para
indicar inicio y final de la cadena (no obligatorio en Dialogue
Manager cuando no hay espacios en blanco intermedios).

Si dentro de la cadena alfanumérica se desea incluir una comilla
simple (que se trataría como carácter especial), como regla general y
para que no se produzca conflicto ninguno, se le debería anteponer
otra comilla simple.

Ahí van algunos ejemplos:

-* Comilla simple intermedia. DM.
-SET &VAR = 'Mc Donald''s' ;
-TYPE &VAR

-* Comilla simple intermedia. DEFINE/COMPUTE.
TABLE FILE CAR
PRINT
COUNTRY
COMPUTE CAMPO/A16 = 'Mc Donald''s' ;
END

-* Comillas simples al principio y al final. DM.
-SET &VAR = '''McDonald''s''' ;
-TYPE &VAR

-* Comillas simples al principio y al final. DEFINE/COMPUTE.
TABLE FILE CAR
PRINT
COUNTRY
COMPUTE CAMPO/A16 = 'Mc Donald''s' ;
END

-* Concatenación de comillas simples. DM.
-SET &VAR = '''' | 'Mc Donald' || '''' || 's' || '''' ;
-TYPE &VAR

-* Concatenación de comillas simples. DEFINE/COMPUTE.
TABLE FILE CAR
PRINT
COUNTRY
COMPUTE CAMPO/A16 = '''' | 'Mc Donald' || '''' || 's' || '''' ;
END


Situación especial es que la cadena con comilla simple se envíe desde
una página html; Una solución válida para este caso consistiría en
que, antes de enviar parámetros, reemplazar mediante expresiones
regulares javascript, todas las posibles comillas simples por dobles
comillas simples:

parms = parms.replace(/\'/gi, '\'\'') ;

Reply all
Reply to author
Forward
0 new messages