以下两行代码:
每个产生相同的输出:
我预计底线会产生以下结果
System.out.println(Arrays.toString("test".split("(?<!^)")));
System.out.println(Arrays.toString("test".split("(?!^)")));
每个产生相同的输出:
[t, e, s, t]
我预计底线会产生以下结果
[, t, e, s, t]
由于它应该愿意在^
之后和t
之前进行拆分。可以有人指出我的想法错在哪里吗?
[t, e, s, t, ]
... - Tim Pietzckersplit
默认忽略尾随的空格。这个 -split("(?<!)", -1)
会给出那个结果。 - Rohit Jainsplit()
的一个相当随机的“特性”。 - Keppil