regex (búsqueda hacia delante) con múltiples dígitos

Tomakin:

Tengo una cadena que se parece a:

text = "9) text of 9\r\n10) text of 10\r\n11) text of 11\r\n12) ...\r\n123) text of 123"

Estoy tratando de dividir de la siguiente manera:

String[] result = text.split("(?=\\d+\\))");

El resultado que estoy buscando es:

- result[0] = "9) text of 9"
- result[1] = "10) text of 10"
- result[2] = "11) text of 11"
- ...

Pero no está funcionando. ¿Qué expresiones regulares se debe utilizar en conjunción con text.split ()?

B4NewWebDev:

Creo que estaban muy cerca - ¿trató añadiendo el delimitador antes de la búsqueda hacia delante?

String[] result = text.split("\\r\\n(?=\d+\))");

Lo he probado en la consola JS (la expresión regular JS es bastante similar al procesador de expresiones regulares de Java)

let x= "9) text of 9 10) text of 10 11) text of 11 ... 123) text of 123"
let result = x.split(/\\r\\n(?=\d+\))/);

resultado da entonces la matriz que quería

Actualización : Actualización código de respuesta basada en la pregunta actualizada

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=334823&siteId=1
Recomendado
Clasificación