Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

254
Vistas
Obtenga una palabra específica de una cadena con expresiones regulares

tengo una cadena

 String string = "-minY:50 -maxY:100 -minVein:8 -maxVein:10 -meta:0 perChunk:5;";

Y de alguna manera quiero sacar el -meta:0 con expresiones regulares (reemplazar todo excepto -meta:0), hice una expresión regular que elimina -meta:0 pero no puedo hacer que elimine todo excepto -meta:0 Intenté usar alguna otra expresión regular, pero estaba ignorando toda la línea cuando tenía -meta:[0-9], y como puede ver, tengo una línea para todo. Así ha ido borrando -meta:0 del String:

 String meta = string.replaceAll("( -meta:[0-9])", ""); System.out.println(meta);

De alguna manera quiero revertir eso y eliminar todo excepto -meta:[0-9]

No pude encontrar nada en la página sobre mi problema porque todo ignoraba toda la línea después de encontrar la palabra, lo siento si hay algo similar a esto.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Debería capturar su coincidencia en un grupo capturado y usar su referencia en reemplazo como:

 String meta = string.replaceAll("^.*(-meta:\\d+).*$", "$1"); System.out.println(meta); //=> "-meta:0"

Demostración RegEx

over 4 years ago · Santiago Trujillo Denunciar

0

Según entiendo su requerimiento, usted quiere:

a) quieres extraer meta* de la cadena

b) reemplazar todo lo demás con ""

Podrías hacer algo como:

 String string = "-minY:50 -maxY:100 -minVein:8 -maxVein:10 -meta:0 perChunk:5;"; Pattern p = Pattern.compile(".*(-meta:[0-9]).*"); Matcher m = p.matcher(string); if ( m.find() ) { string = string.replaceAll(m.group(0),m.group(1)); System.out.println("After removal of meta* : " + string); }

Lo que hace este código es encontrar meta:[0-9] y lo retiene y elimina otros grupos encontrados

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda