パイプ文字 ("|") で文字列を分割する [重複] 質問する

パイプ文字 (

この文字列から値を分割できません:

"Food 1 | Service 3 | Atmosphere 3 | Value for money 1 "

現在のコードは次のとおりです:

String rat_values = "Food 1 | Service 3 | Atmosphere 3 | Value for money 1 ";
String[] value_split = rat_values.split("|");

出力

[, F, o, o, d, , 1, , |, , S, e, r, v, i, c, e, , 3, , |, , A, t, m, o, s, p, h, e, r, e, , 3, , |, , V, a, l, u, e, , f, o, r, , m, o, n, e, y, , 1, ]

期待される出力

食事 1
サービス 3
雰囲気 3
価格に見合った価値 1

ベストアンサー1

|は正規表現のメタ文字です。エスケープする必要があります:

String[] value_split = rat_values.split("\\|");

おすすめ記事