Usando "Izquierda" en una cadenaHola,
Creo que esto debería ser fácil, pero he pasado demasiado tiempo tratando de resolverlo. Tengo una hoja de trabajo más compleja con una lista más larga (que se refiere a los nombres de las columnas que pueden cambiar), pero lo que estoy tratando de hacer es crear una nueva lista para usarla en otro lugar eliminando la palabra "_Rendimiento" de mi lista original. Ejemplo simple a continuación;
Nombres predeterminados hasta aquí ( 1 );
exurl = {"Rendimiento_Prueba, Rendimiento_Ayuda"};
X = Izquierda (exurl, Contiene ( exurl, "_Yield" ) - 1 );
Para esto quiero obtener X = {"Prueba", "Ayuda"} pero solo obtengo X = exurl
Automatización y secuencias de comandosRe: Usar "Left" en una cadenaSi tiene acceso a JMP16+, este es un buen lugar para usar Transform Each
</CODE><BR /><CODE class=" language-jsl">Names Default To Here(1);
exurl = {"Test_Yield", "Help_Yield"};
X = Transform Each({url}, exurl, Substitute(url, "_Yield", ""));
show(X); // X = {"Test", "Help"};
Re: Usar "Left" en una cadenaHola @Sombra ,
junto con lo que @juandmoore1 sugerida para el sustituto, que es una excelente manera de hacerlo, otra opción puede ser la siguiente:
Names Default to Here(1);
exurl = {"Test_Yield", "Help_Yield"};
x={};
For(i=1, i<=NItems(exurl), i++,
x[i]=left(exurl[i], Contains(exurl[i], "_Yield")-1);
);Creo que una de las cosas que está descartando el comando Izquierda es que es una lista de elementos múltiples, aunque el índice de secuencias de comandos dice que puede manejar listas, en realidad no parece tener esa capacidad. El ciclo For ayuda a construir su variable de salida como una lista. A veces, este tipo de enfoque es más flexible, especialmente cuando tiene tablas de datos grandes y necesita cambiar el nombre de muchas columnas, etc.
Además, creo que hay un error en la URL de ejemplo que diste. Escribiste: exurl={"Test_Yield, Help_Yield"}, que es solo una cadena, no una lista. Creo que lo que quisiste escribir es exurl={"Test_Yield", "Help_Yield"} que tiene comillas adicionales y comas que separan los elementos de la lista.
¡Espero que esto ayude!,
SD
Re: Usar "Left" en una cadenaHola Juan, gracias por tu respuesta. Intenté eso pero aún obtengo X = excurl.
Re: Usar "Left" en una cadenaTiendo a usar sustitutos en estas situaciones.
X = substitute(exurl,"_Yield","");