我试图在Java中使用Split Function。我要拆分的字符是;
。
所以我的代码是这样的:
string.split(";");
但是,在字符串中,我有许多逃脱了\;
。我想使用一个正则表达式,它不会拆分,\;
而只会在单独存在的位置拆分;
。
字符串示例:
sometexthere\;shhshshshhs;shhshshshshs\;dddddd;
预期结果:
[0] sometexthere\;shhshshshhs;
[1] shhshshshshs\;dddddd;
任何帮助,将不胜感激。谢谢!
试试这个:
str.split("(?<!\\\\);");
编辑
如果您确实希望;
在结果数组中使用分隔符():
str.split("(?<=[^\\\\];)");
请注意,单向查找就足以解决此问题。
这次,我做了一个测试:
final String str = "sometexthere\\;shhshshshhs;shhshshshshs\\;dddddd;";
System.out.println(Arrays.toString(str.split("(?<=[^\\\\];)")));
它输出:
[sometexthere\;shhshshshhs;, shhshshshshs\;dddddd;]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句