Regex para extraer solo String de un contenido coincidente usando lookahead y lookbehind

Considere el siguiente texto que es parte de un archivo

Nombre y Emp No
Jack Doe 1234
John 12345
Dob: 28/12/1987

Ahora me gustaría escribir una sola expresión regular ( sabor java ) para extraer solo los nombres del texto anterior.

Intenté la siguiente expresión regular con lookahead y lookbehind

(?<=(Name\s&\sEmp\sNo)\s{2,3})((.{1,100}\s{0,3}){0,5}?)(?=Dob)

y la salida que obtuve fue

Jack Doe 1234[CR][LF]John 12345[CR][LF]

Si solo quiero los nombres como salida, ¿cómo puedo modificar esta expresión regular?

Respuesta 1

Esta expresión regular debería ayudarte.

^([[:alpha:]]+[ ]?)+(?=[ ]+\d+)

Regex Demo

Respuesta: 2

Decidí crear un mapa con la nueva herramienta Here Maps XYZ Studio (que todavía está en Beta) y me preguntaba si puedo insertar ese mapa en mi proyecto actual de Android Studio. Creo que ahora mismo ...

He estado tratando de analizar un archivo JSON usando GSON para mostrar el contenido. Para atributos como el nombre del barco, obtengo los resultados apropiados, pero para muchos de los otros, como typeOfShipCargo, ...

Tengo la siguiente cadena llamada s = "abcac" que se repite infinitamente muchas veces. Esto significa que s se verá así: s = "abcacabcacabcacabcacabcac ...." yn representa la subcadena de s. Por ...

Tengo este código: switch (mes) {caso 1: System.out.print ("enero"); descanso; caso 2: System.out.print ("febrero"); descanso; caso 3: System.out.print ("marzo"); ...