有什么方法可以使Java中的字符串中的逗号(,)不可转义吗



我有一个String str = "13-005B,162-,0000-"。我有一个名为outputUtill的函数,它需要一个格式为-="(string1 value)",="(string2 value)",="(string3 value)"的输入。outputUtill函数基于作为分隔符的","来分割输入字符串。有没有什么方法可以让逗号(,(在String str中不可转义,这样当它变成格式:-="13-005B,162-,0000-"并传递给outputUtill function时,它就不会被拆分为三个子字符串

  1. 13-005B
  2. 162-
  3. 0000-

例如,我们通过

="370143030",="SPRING TOWNSHIP CENTRE",="1869 ZION ROAD BELLEFONTE PA 16823",="8143551",="02",="13-005B,162-,0000-", 

到outputUntill函数。我们希望输出为

370143030
SPRING TOWNSHIP CENTRE
1869 ZION ROAD BELLEFONTE PA 16823
8143551
02
13-005B,162-,0000-

outputTill可以在序列上拆分"="并且修剪前导和结束="0";以及";,

public static void main(String[] args) {
String input = "="370143030",="SPRING TOWNSHIP CENTRE",="1869 ZION ROAD BELLEFONTE PA 16823",="8143551",="02",="13-005B,162-,0000-", ";
String sep = "",="";
String[] output = input.substring(2, input.length() - 3).split(sep);
Arrays.stream(output).forEach(s -> System.out.println(s));
}

输出:

370143030
SPRING TOWNSHIP CENTRE
1869 ZION ROAD BELLEFONTE PA 16823
8143551
02
13-005B,162-,0000-

最新更新