Regex para extraer el archivo de la ruta con JSLEstoy seguro de que esta es una respuesta directa a esta pregunta, pero si tengo lo siguiente:
ruta_completa[i] = "C:\dir1\dir2\dir3\dir4\file.xlsx"
y quiero obtener solo "file.xlsx" y la profundidad del directorio es variable, es decir, tal vez 2 directorios, tal vez 5, ¿cómo lo haría? En Perl, dividiría la cadena en una matriz por \ y tomaría la última parte de la matriz, pero no estoy seguro de cómo hacerlo en JSL. ¡Cualquier ayuda sería apreciada!
Re: Regex para extraer el archivo de la ruta con JSLEsta es una gran solución, una línea. ¡Muchos gracias!
Re: Regex para extraer el archivo de la ruta con JSLpalabra (-1, ruta_completa[i], "\" )
Puede usar valores negativos, en la función word(), por lo que -1 da la última palabra, usando el delimitador de elección.
Re: Regex para extraer el archivo de la ruta con JSLDos ejemplos de cómo se podría hacer:
full_path = "C:\dir1\dir2\dir3\dir4\file.xlsx";
//Regex (fails if filename contains non-word characters)
file1 = Regex(full_path, "[\w.]+$");
// Split string
file2 = Reverse(Words(full_path, "\"))[1];
Show(file1, file2);
Re: Regex para extraer el archivo de la ruta con JSLPrueba el Función de palabras() .
full_path = "C:\dir1\dir2\dir3\dir4\file.xlsx";
listofwords=words(full_path, "\");
filename=listofwords[nitems(listofwords)];
/*:
"archivo.xlsx"
Re: Regex para extraer el archivo de la ruta con JSLPuede usar la función Words() de JSL para separar una ruta en su parte componente y luego tomar solo la última parte. Ejemplo:
ruta_completa = {"C:\dir1\dir2\dir3\dir4\file.xlsx"}; yo = 1; // configuración
ruta_completa[i] = "C:\dir1\dir2\dir3\dir4\file.xlsx";
nombre de archivo = Palabras (ruta_completa [i], "\"); // separa la ruta en función de la barra invertida como delimitador: devuelve una lista
nombre de archivo = nombre de archivo [N Elementos (nombre de archivo)]; // obtener la última cadena en la lista
/*:
"archivo.xlsx"