[英]Java split regexp when delimiter is part of the data
抱歉,这个问题已经解决,或者已经结案,但是我一直在寻找很长时间没有答案。
我必须使用~
分隔符分割从外部系统接收的行。
我有一个问题,因为某些数据包含~~
(〜重复两次),在这种情况下,不得拆分数据。
因此,如果我收到A~B~C~~C~D
我想将其拆分回去: A, B, C~~C, D
我不知道我必须使用什么正则表达式才能拆分~~
。
您可以使用(?<!~)~(?!~)
进行负向前看并向后看~
。
例
String test = "A~B~C~~D~E";
System.out.println(
Arrays.toString(
test.split("(?<!~)~(?!~)")
)
);
产量
[A, B, C~~D, E]
这也应该适用于两个以上的连续~
,例如,使用"A~B~C~~~D~E"
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.