Java 基于一个字符而不是另一个字符的拆分操作
我想基于一个字符分割字符串,但不基于其他字符Java 基于一个字符而不是另一个字符的拆分操作,java,string,split,Java,String,Split,我想基于一个字符分割字符串,但不基于其他字符 String data = "data1|data2||data3"; 执行字符串arrayData[]=data.split(“|”)时给我的输出如下 arrayData[0] = data1 arrayData[1] = data2 arrayData[2] = data3 arrayData[0] = data1 arrayData[1] = data2||data3 但我想要像这样的输出 arrayData[0]
String data = "data1|data2||data3";
执行字符串arrayData[]=data.split(“|”)时代码>给我的输出如下
arrayData[0] = data1
arrayData[1] = data2
arrayData[2] = data3
arrayData[0] = data1
arrayData[1] = data2||data3
但我想要像这样的输出
arrayData[0] = data1
arrayData[1] = data2
arrayData[2] = data3
arrayData[0] = data1
arrayData[1] = data2||data3
你能帮我一下吗。
谢谢
是正则表达式中的一个特殊字符,因此需要将其转义为\\\\\\
,这意味着Java字符串文本中的\\\\\\\
要在独立的|
上进行拆分,请使用零宽度负后向和前向查找,以确保其前面或后面没有|
String data=“data1 | data2 | | data3”;
String[]arrayData=data.split((?split(“|”)将不会返回[data1,data2,data3]
,它返回[d,a,t,a,1,|,d,a,t,a,a,a,a,a,a,a,3]
。请修复您有缺陷的假设。