小编Sam*_*Sam的帖子

正则表达式只匹配第一个零之后的零

使用正则表达式,如何确保第一个零后面除了零之外什么都没有?

ABC1000000 - valid
3212130000 - valid
0000000000 - valid
ABC1000100 - invalid
0001000000 - invalid
Run Code Online (Sandbox Code Playgroud)

未经验证的正则表达式将类似于 - [A-Z0-9]{10},确保它是 10 个字符。

regex

34
推荐指数
5
解决办法
5660
查看次数

如何使用 Streams API 取消扁平化层次结构

如果我的层次结构仍处于排序状态,但已展平 - 如何使用 Java Streams API 创建父/子结构?一个例子:我如何从

-,A,Foo
A,A1,Alpha1
A,A2,Alpha2
-,B,Bar
B,B1,Bravo1
B,B2,Bravo2
Run Code Online (Sandbox Code Playgroud)

-
  A
    A1,Alpha1
    A2,Alpha2
  B
    B1,Bravo1
    B2,Bravo2
Run Code Online (Sandbox Code Playgroud)

一种简单的非流方式是跟踪父列并查看它是否已更改。

我已经尝试过使用 Collectors 和 groupingBy 的各种方法,但还没有找到方法。

List<Row> list = new ArrayList<>();
list.add(new Row("-", "A", "Root"));
list.add(new Row("A", "A1", "Alpha 1"));
list.add(new Row("A", "A2", "Alpha 2"));
list.add(new Row("-", "B", "Root"));
list.add(new Row("B", "B1", "Bravo 1"));
list.add(new Row("B", "B2", "Bravo 2"));

//Edit
Map<Row, List<Row>> tree;

tree = list.stream().collect(Collectors.groupingBy(???))
Run Code Online (Sandbox Code Playgroud)

java tree java-8 java-stream

3
推荐指数
1
解决办法
732
查看次数

标签 统计

java ×1

java-8 ×1

java-stream ×1

regex ×1

tree ×1