Mam przypadek, w którym mam następujący sposób:podziału String po znaku
final String[] columns = row.split(delimiter.toString());
Gdzie delimiter
to postać.
Działa to dobrze, gdy trzeba podzielić na podstawie kart, podając \t
jako ogranicznik. Jednak gdy chcę podzielić na potoku, przechodzę w ogranicznik |
i nie działa zgodnie z oczekiwaniami.
Przeczytałem kilka postów o tym, jak |
jest specjalną postacią, która oznacza pustą lub pustą, a więc dzieli się na każdej napotkanej postaci, jednak nie chcę tego zachowania.
mogłem zrobić prostą kontrolę w moim kodu dla tego przypadku rur i ominąć kwestii:
if ("|".equals(delimiter.toString())) {
columns = row.split("\\" + delimiter.toString());
}
else {
columns = row.split(delimiter.toString());
}
Ale nie wiem, czy istnieje prostszy sposób, aby obejść ten problem. Czy są jakieś inne specjalne znaki, które zachowują się jak |
, które muszę wziąć pod uwagę?
Dzięki, że działało idealnie. Przyjmuję za 11 minut. –