AYUDA REGEX con espacios en blancoHola
Puedo hacer lo que quiero para regex en un editor, pero tengo problemas para cambiarlo para usarlo en JMP.
Lo siguiente hace lo que necesito que haga en el editor
([E] | [e]) [2] | (231)
parece que no puedo llegar a trabajar exactamente como lo necesito en JMP llegué tan lejos como a continuación
Regex( :TEXT, "(E2|e2|231\d?)", "\1" )
recogerá E2 o e2 sin problemas, pero para 231 necesito que solo se extraiga cuando haya espacios en blanco a cada lado.
He estado buscando en la comunidad pero no puedo encontrar exactamente lo que necesito.
En un mundo ideal, ¿mostrará todos los resultados en la columna, no solo uno?
Estoy seguro de que alguien por ahí me puede decir segundos cómo hacerlo
AnalíticaTabla de datosScriptingRe: AYUDA REGEX con espacios en blanco @AlexS ,
\ s suele ser el símbolo de espacio en blanco o \ sb. Sin embargo, será más fácil darle una respuesta si proporciona un ejemplo de una fila de columna: texto y lo que está tratando de extraer, invente algo si es propietario.
Re: AYUDA REGEX con espacios en blanco@gzmorgan ()
Entonces, el texto de ejemplo sería
Jsjsjjs 231 jdjdjdj 2377474742311
No lo quiero de la segunda secuencia numérica solo cuando hay espacio en blanco a cada lado en el momento en que recogería 2311 cuando todo lo que quiero es 231 si hay uno
GraciasRe: AYUDA REGEX con espacios en blancoEste ejemplo muestra la expresión para obtener la segunda parte de su objetivo según el ejemplo que proporcionó.
Regex(
"Jsjsjjs 231 jdjdjdj 2377474742311",
"\s(\d+)\s",
"\1"
);
Re: AYUDA REGEX con espacios en blanco @AlexS ,
Marca, @markbailey , le proporcionó el patrón para encontrar cualquier número en el primer patrón "espacio + cualquier número + espacio"
Tal vez leí mal su respuesta, pero me pareció que estaba buscando la secuencia específica espacio + 231 + espacio.
En caso afirmativo, una solución alternativa es utilizar el Contiene () función. El código es un poco más legible. Nota REGEX devuelve una cadena, por lo que si desea el número necesita el Num () función. Se adjunta una tabla con ambas funciones a esta publicación.
If( Contains( :Text, " 231 " ),
231
)

Re: AYUDA REGEX con espacios en blanco @ gzmorgan0 ,
,
Ambos serán necesarios de alguna forma, pero específicamente para esta solicitud, lo necesito para '231', así que gracias a los dos.
¿Cómo lo haría para buscar los 3 y luego ponerlo todo en una columna si está allí? ¿Es solo un caso de crear múltiples expresiones regulares junto con la concatenación de columnas?
Entonces, por ejemplo, estoy buscando E2 o e2 o 231, pero solo devolverá uno de esos. ¿Lo que me gustaría es que devuelva todo lo que encuentre?
Gracias por su direccion y ayudaRe: AYUDA REGEX con espacios en blancoAquí hay una fórmula que debería funcionar para obtener lo que quieres. La columna a la que aplica esto debe ser una columna de caracteres.
If( Row() == 1,
getValues = Function( {},
returnVal = "";
If( Contains( :Text, " 231 " ),
returnVal = "321"
);
If( Contains( :Text, " e2 " ),
If( returnVal != "",
returnVal = returnVal || ", "
);
returnVal = returnVal || "e2";
);
If( Contains( :Text, " E2 " ),
If( returnVal != "",
returnVal = returnVal || ", "
);
returnVal = returnVal || "E2";
);
returnVal;
)
);
theValue = getValues();
Re: AYUDA REGEX con espacios en blancoExcelente gracias por tu tiempo.