Manipulando o delimitador com caracteres de escape no método Java String.split ()
Eu procurei na web por minha consulta, mas não obtive a resposta que se encaixa exatamente na minha solicitação. Eu tenho minha string como abaixo:
A|B|C|The Steading\|Keir Allan\|Braco|E
Minha saída deve se parecer abaixo:
A
B
C
The Steading|Keir Allan|Braco
E
Minha exigência é pular o delimitador se ele for precedido pela seqüência de escape. Eu tentei o seguinte usando lookbehinds negativos emString.split()
:
(?<!\\)\|
Mas, meu problema é que o delimitador será definido pelo usuário final dinamicamente e não precisa ser sempre|
. Pode ser qualquer caractere no teclado (sem restrições). Portanto, minha dúvida é que a regex acima pode falhar em alguns dos caracteres especiais que não são permitidos na regex.
Eu só queria saber se essa é a maneira perfeita de fazer isso.