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

291
Vistas
¿Cómo dividir un texto al detectar la cadena "\ n" y un espacio?

por ejemplo

tengo una cadena como

 String example = "Hello\nHow\nAre\nyou today? I Love Pizza"; //

Lo que quiero es una matriz como esta

 [Hello, \n, How, \n, Are, \n, you, today? , I , Love, Pizza]

Ya probé

 String[] splited = example.split("[\\n\\s]+");// as will a lot of regular exprisions like ("\\n\\r+") etc.

pero no funcionaron.

¿alguien tiene una solución por favor?

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

0

Puede dividir afirmando una secuencia de nueva línea \R a la izquierda o a la derecha, o hacer coincidir un carácter de espacio en blanco horizontal \h usando una alternancia |

 (?=\\R)|(?<=\\R)|\\h

demostración de Java

Por ejemplo

 String example = "Hello\nHow\nAre\nyou today? I Love Pizza"; // String[] splited = example.split("(?=\\R)|(?<=\\R)|\\h"); for (String element : splited) { if (element.equals("\n")) element = "newline"; System.out.println(element); }

Producción

 Hello newline How newline Are newline you today? I Love Pizza
over 4 years ago · Santiago Trujillo Denunciar

0

// Split on the following: // look ahead for '\n' which is preceded by a character that is not '\n' // OR look ahead for a character that is not '\n' preceded by '\n' // OR a single space. String regex = "(?=\\n)(?<!\\n)|(?!\\n)(?<=\\n)| "; String example = "Hello\nHow\nAre\nyou today? I Love Pizza"; // This is the array that you want. String[] splited = example.split(regex); // This is just to display the contents of 'splited'. int count = 0; for (String part : splited) { count++; if (part.equals("\n")) { // Rather than print the actual newline, print its escape sequence System.out.printf("%2d. \\n%n", count); } else { System.out.printf("%2d. %s%n", count, part); } }

Resultado:

 1. Hello 2. \n 3. How 4. \n 5. Are 6. \n 7. you 8. today? 9. I 10. Love 11. Pizza
over 4 years ago · Santiago Trujillo Denunciar

0

Puede hacerlo simplemente usando lookbehind (especificado por ?<= ) o lookahead (especificado por ?= ) para \n y alternado con \s+ (para espacios en blanco).

Manifestación:

 import java.util.Arrays; public class Main { public static void main(String[] args) { String example = "Hello\nHow\nAre\nyou today? I Love Pizza"; // String[] splited = example.split("(?<=\\n)|(?=\\n)|\\s+"); System.out.println(Arrays.toString(splited)); } }

Producción:

 [Hello, , How, , Are, , you, today?, I, Love, Pizza]
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