¿En qué se diferencia Guava Splitter.onPattern (..). Split () de String.split (..)?

Recientemente aproveché el poder de unexpresión regular anticipada dividir una cadena:

"abc8".split("(?=\\d)|\\W")

Si se imprime en la consola, esta expresión devuelve:

[abc, 8]

Muy satisfecho con este resultado, quería transferir esto a Guava para un mayor desarrollo, que se veía así:

Splitter.onPattern("(?=\\d)|\\W").split("abc8")

Para mi sorpresa, la salida cambió a:

[abc]

¿Por qué?

Respuestas a la pregunta(2)

Su respuesta a la pregunta