Ho un caso in cui sto facendo quanto segue:Split stringa di caratteri
final String[] columns = row.split(delimiter.toString());
Dove delimiter
è un personaggio.
Questo funziona correttamente quando è necessario dividere in base alle schede fornendo \t
come delimitatore. Tuttavia, quando voglio dividere una pipe, passo in un delimitatore di |
e questo non funziona come previsto.
Ho letto diversi post su come |
è un carattere speciale che significa nullo o vuoto, quindi si divide su ogni personaggio che incontra, tuttavia, non voglio questo comportamento.
ho potuto fare un semplice controllo nel mio codice per questo caso tubo e aggirare il problema:
if ("|".equals(delimiter.toString())) {
columns = row.split("\\" + delimiter.toString());
}
else {
columns = row.split(delimiter.toString());
}
Ma non sapevo se ci fosse un modo più semplice per aggirare questo. Inoltre, ci sono altri caratteri speciali che si comportano come lo |
che devo prendere in considerazione?
Grazie, ha funzionato perfettamente. Accetterò tra 11 minuti. –