Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hola,
"Por cosas de la vida", he tenido que crear una función para convertir una palabra del singular al plural, y he terminado realizando una 'funcion'/expresión de qlik para ello. La comparto con vosotros por si os puede ser útil algún día.
Son unas reglas genéricas y hay muchos casos a añadir y mejorar, pero creo que "da el pego" y a mi me ha funcionado.
He aplicado las siguientes reglas:
Creación de la función fPluralizar
He creado una variable (Configuración | panel de variables) que la he llamado fPluralizar con la siguiente expresión:
if(match(Right(lower($1),1),'a','e','o')>0,$1&'s',
if(match(right(lower($1),1),'b' ,'d' ,'f' ,'g' ,'h' ,'j' ,'k' ,'l' ,'m' ,'n' ,'ñ' ,'p' ,'q' ,'r' ,'s' ,'t' ,'v' ,'x' ,'y')>0,$1&'es',
if(right(lower($1),1)='z',Left($1,len($1)-1)&'ces',$1)
)
)
Pluralizar palabras:
Ejemplo:
=$(fPluralizar('Ejemplo'))
Resultado: Ejemplos
También la he utilizado en inglés con las siguientes reglas:
Expresión:
if(match(Right(lower($1),1),'s','x','o')>0 or match(Right(lower($1),2),'ch','sh')>0,$1&'es',
if(match(left(right(lower($1),2),1),'b' ,'d' ,'f' ,'g' ,'h' ,'j' ,'k' ,'l' ,'m' ,'n' ,'p' ,'q' ,'r' ,'s' ,'t' ,'v' ,'x' ,'y')>0 and Right(lower($1),1)='y' , Left($1,len($1)-1) & 'ies' ,
$1&'s'
)
)
Espero que os sea de utilidad algún día!
Saludos
David, al crear la variable me da error en la expresion. ¿puedes subir un qvw?
Es "normal" que te de error de sintaxis el editor de qlik al introducir el $1, el editor en ciertas situaciones deja mucho que desear...
Igualmente adjunto un qvw (en el artículo original) por si puede ser de ayuda.
Saludos
Muy bueno tu intento, esto nos permite ejercitar algunos musculos del cerebro.
Habria que agregarle los que terminan en i o í y para hacerlo mas sofisticado, hacer que reconozca las palabras que ya estan en plural.