Eliminar carácter de cadena en posición específicaHola,
Estoy buscando crear un script para eliminar un carácter de una cadena mientras ignoro el mismo carácter anterior en la cadena.
Por ejemplo, de una tabla de datos tengo un DateTime especial de YY/MM/DD/hh:mm y deseo eliminar el tercer / (es decir, el carácter 9).

Gracias por cualquier ayuda,
Lucas
Modelado Estadístico AvanzadoAutomatización y secuencias de comandosLa personalización en masaIngeniería de Calidad y ProcesosventanasRe: Eliminar carácter de cadena en posición específicaPodría ser solo un simple error con las referencias de columna.
Names Default To Here(1);
dt = New Table("Untitled 5",
Add Rows(3),
New Column("DateTime", Character, "Nominal", Set Values({"21/10/24/15:21", "21/10/24/14:21", "20/09/20/15:20"}))
);
/*
other solutions
a = "21/10/24/15:21";
//other solution with Regex
Show(Regex(a, "^(.{8})(.)(.*)$", "\1 \3"));
//using Words and Concat Items
Show(Concat Items(Words(a, "/")[1 :: 3], "/") || " " || Word(4, a, "/"));
//Using Contains to get last "/" and then Substr()
lastIdx = Contains(a, "/", -1);
Substr(a, 1, lastIdx - 1) || " " || Substr(a, lastIdx + 1);
*/
dt << New Column("Compatible DateTime", Formula(Left(:DateTime, 8)</img> || " " || Right(:DateTime, 5)));(Tenga en cuenta que la nueva columna no será numérica continua sin jsl adicional)
Re: Eliminar carácter de cadena en posición específicaHola Craige, lo he intentado pero parece que recibo errores al intentar usarlo:

Es posible que lo esté entendiendo incorrectamente, ya que intento crear una nueva columna con los datos:

También disculpas, por alguna razón no pude enviar como un script JLS a la captura de pantalla requerida
Re: Eliminar carácter de cadena en posición específicaHay muchos enfoques. Si las cadenas tienen siempre la misma longitud, etc., podría usar una columna de fórmula con
Left( DateTime, 8 ) || "T" || Right( DateTime, 5 );
Es posible que desee un separador como T, que se usa en uno de los formatos internacionales, yyyy-mm-ddThh:mm.
Si hay alguna variación, pero tal vez siempre la tercera /, podría usar expresiones regulares en la columna de fórmula
Regex( DateTime, "^(\d+/\d+/\d+)/(\d+:\d+)$", "\1T\2" );
^ y $ anclan la coincidencia al principio y al final de la cadena DateTime. \d+ coincide con 1 o más dígitos. Los elementos primarios forman grupos, y los dos grupos se referencian con \1T\2 para generar el valor del resultado.