Java竖线分割字符串问题

问题

使用Java以竖线|为分隔符做字符串的分割时,出现字符串分割结果不对情况。

String str = "123|456";
String[] results = str.split("|");
System.out.println(Arrays.toString(results));
// 输出:,1,2,3,|,4,5,6

环境

  • windows 10
  • JDK 8

原因

|应该是特殊字符,作为分割符时出现异常情况,类似字符还有+*

解决

使用转义字符

// 使用转义字符 \\
String[] results = str.split("\\|");

使用中括号

String[] results = str.split("[|]");
posted @ 2021-02-04 22:00  卡洛小豆  阅读(714)  评论(0编辑  收藏  举报