如果分隔符之前没有字符,则正则表达式按分隔符分割

时间:2015-03-19 08:44:11

标签: regex string delimiter

test;136;1234567890;Som/;e;Test;test /;123;qwertyuio;dfghjk

我需要将其拆分为:

test1361234567890Som/;eTesttest /;123qwertyuiodfghjk

分隔符是“;”但是有一种情况是这个字符也可以在文本中,所以在这种情况下我在“;”之前添加“/”在我的代码中。但是,我不知道如何从正则表达式搜索中排除它。

感谢您的帮助!

2 个答案:

答案 0 :(得分:2)

使用负面看法:

String parts = str.split("(?<!/);");

如果您想要满足以/结尾的术语,您也可以逃避:

String parts = str.split("(?<!/);|(?<=//);");

如果您想允许术语以&#34; /;&#34;结尾,请使用AST语言解析器。

答案 1 :(得分:0)

我写了正则表达式来查找除分隔符之外的所有内容:

[^((?<!/);|(?<=//);)]*