Re: ¿Cómo usar Regex para interceptar un rango específico de contenido en una tabla?dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Add Rows( 5, at end );
Wait( 0 );
Current Data Table() << Bring Window To Front;
Main Menu( "Copy With Column Names" );
txt = Get Clipboard();
Re: ¿Cómo usar Regex para interceptar un rango específico de contenido en una tabla?¡Gracias!
Re: ¿Cómo usar Regex para interceptar un rango específico de contenido en una tabla?En este caso simple, no hay necesidad de expresiones regulares y solo puede obtener el índice de la lista. Si se necesita una comparación más complicada, debería ser bastante fácil crear un ciclo para recorrer la lista
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << Add Rows(5, at end);
dt << Select columns("name");
Main Menu("Copy With Column Names", dt << Get Window Title);
clipb = Get Clipboard();
txt = Trim Whitespace(clipb);
l_all = Words(txt, "\!N");
break_str = "HENRY";
l_interested = Substr(l_all, Contains(l_all, break_str));
dt_new = New Table("table",
Add Rows(N Items(l_interested)),
New Column("col", Character, Nominal, Values(l_interested));
);

Re: ¿Cómo usar Regex para interceptar un rango específico de contenido en una tabla?Quiero seguir aprendiendo código eficiente de la mano de los expertos.
Si los datos OBTENIDOS del portapapeles TIENE 3 columnas por día y están separados por espacios, no por tabuladores.

Cómo modificar el código para obtener una tabla con tres columnas como esta.
Gracias jti!
Re: ¿Cómo usar Regex para interceptar un rango específico de contenido en una tabla?Muchas maneras de manejar esto. Aquí hay una idea usando Subíndice de tabla de datos
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << Add Rows(5, at end);
dt << Select columns({"name", "age", "sex"});
Main Menu("Copy", dt << Get Window Title);
clipb = Get Clipboard();
txt = Trim Whitespace(clipb);
// Substitute Into(txt, " ", "\!t"); // could replace spaces with tabs
l_all = Words(txt, "\!N");
// Using \!t for demo purposes
list_of_lists = Transform Each({line}, l_all, Words(line, "\!t"));
dt_new = New Table("table",
Add Rows(N Items(l_all))
);
dt_new << Delete Column(1);
For(i = 1, i <= N Items(list_of_lists[1]), i++,
dt_new << New Column("col" || char(i), Character, Nominal);
);
dt_new[0,0] = list_of_lists;Re: ¿Cómo usar Regex para interceptar un rango específico de contenido en una tabla?Todavía estoy usando JMP 14
Este código no se está ejecutando.
list_of_lists = Transform Each({line}, l_all, Words(line, "\!t"));Gracias jti!
Re: ¿Cómo usar Regex para interceptar un rango específico de contenido en una tabla?Cámbielo a bucle for normal. Algo como esto debería funcionar
list_of_lists = {};
For(i = 1, i <= N Items(l_all), i++,
Insert Into(list_of_lists, Eval List({Words(l_all[i], "\!t")}))
);Re: ¿Cómo usar Regex para interceptar un rango específico de contenido en una tabla?list_of_lists = {};
For(i = 1, i <= 3, i++,
Insert Into(list_of_lists, Eval List({Words(l_all, " ")}))
);¿Cómo usar Regex para interceptar un rango específico de contenido en una tabla?¡Hola!
Suposición: Los datos originales se obtienen en el portapapeles con líneas vacías consecutivas al final, y las filas que no están vacías no se copian.
Cómo usar el RE para interceptar el contenido comenzando después de la línea que contiene el contenido especificado y terminando en la línea vacía. Copiar en la nueva tabla.
Por ejemplo: "Gran Clase.JMP"
Y dice "ALFREDO"
Consigue mi nueva mesa.
secuencias de comandos