4
1 1
1 2 1
0
1 1
这是作为输入的字符串,但我只需要每一列,从第二列开始,即:
这个字符串
在可能有多少行或多少列(列被一个空格分割)方面没有固定的大小。
我认为通过使用以下工具,这相当容易:
string.split("enter regex here");
我需要第一列之后的每一列。我仍在学习regex,但似乎找不到一个好的解决方案。我知道关于拆分的“\\r?\\n”和“”,但不知道如何将两者连接起来以获取每一列。非常感谢您的帮助:)
另一个字符串可能如下所示:
2
1
1 2
9 3 5
1 3
0 9 2 4
0
在这种情况下,我需要2、3、5、3、9、2、4。
String s = "4 \n"
+ "1 1\n"
+ "1 2 1\n"
+ "0\n"
+ "1 1\n";
String result = s.replaceAll("((^|\\n)\\d|[ ])", "").replaceAll("(\\d)(?=\\d)", "$1, ");
System.out.println(result);
//1, 2, 1, 1
您可以使用字符串拆分每一行。线条获取线条流,然后使用模式在每个空间拆分后平面映射这些线条。拆分流,跳过第一列,并使用逗号作为分隔符重新连接:
String input ="4 \n"
+ "1 1\n"
+ "1 2 1\n"
+ "0\n"
+ "1 1\n";
Pattern pattern = Pattern.compile(" ");
String result = input.lines()
.flatMap(line -> pattern.splitAsStream(line).skip(1))
.collect(Collectors.joining(", "));
System.out.println(result);
//1, 2, 1, 1
我正在尝试找到正则表达式以获得字符串的最后一个字符: 通过正则表达式查找最后一个字符应返回“F”。
尝试查找正则表达式以获取字符串的最后一个字符String=“a76b62zf63” 通过正则表达式查找最后一个字符返回“F”
问题内容: 我想分裂字符串列,其中值 不等于 到 并保存到另一个表,这将是这样的: 这是我的分割字符串代码: 这是我用来调用该函数的代码: 上面的代码给我这个错误: 问题答案: 子查询返回了1个以上的值。当子查询遵循=,!=,<,<=,>,> =或将子查询用作表达式时,不允许这样做。该语句已终止。 由于您的子查询返回了多行,因此发生了上述错误。尝试执行以下操作: 您会看到它将返回3行,每一项返回一
如何将过滤器列表拆分为单个过滤器元件?split2String在线程“main”java.util.regex中导致:异常。PatternSyntaxException:索引10或(|和)附近的未闭合组(
Java官方文档说明: 例如,字符串使用以下表达式Regex Result生成以下结果: 这就是我需要它工作的方式。然而,如果我运行这个: 它打印: 这与我的预期相去甚远: 为什么会这样?
问题:我可以在给定的正则表达式上拆分字符串,但相同的正则表达式在匹配具有相同正则表达式的方法时失败。 问题:如何使用用于拆分同一字符串的同一正则表达式在matches方法上返回true? 查看操作中的正则表达式