java - 分割空格分隔的字符串

标签 java regex string split

String numbers = "5 1 5 1";

那么,是吗:

String [] splitNumbers = numbers.split();

或者:

String [] splitNumbers = numbers.split("\s+");

寻找:["5","1","5","1"]

知道为什么 .split 行都不起作用吗?我尝试阅读有关正则表达式的答案,但一无所获。

最佳答案

在上面的情况下 split("\s+");,您需要用另一个反斜杠转义\,即:

split("\\s+");

或者

split("");也可以做到

注意split("\\s+");分割任意长度的空白,包括换行符(\n), tab(\t) while split("");仅分割一个空格。

例如,当您的字符串以两个空格分隔时,请说“5   1 5 1”,

使用 split("\\s+"); 你会得到 {"5","1","5","1"}

使用split("");时,您将得到{"5","","1","5","1"}

关于java - 分割空格分隔的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21034584/

相关文章:

java - 如何从 MethodArgumentNotValidException 类中提取字段名称和错误消息?

java - jaxb xjc - 如何生成单元测试文件

Java:不同的byte[]在utf8中具有相同的字符串

r - 如何使用正则表达式提取 R 中字符串的不匹配部分?

ruby .split ('\n' ) 不在新行上拆分

javascript - 如何知道一个字符串以 jQuery 中的特定字符串开始/结束?

java - 如何在 MapReduce hadoop 中使用 GeoLite 数据库?

regex - 突出显示单词中第二次出现的字符

node.js - [ :^punct] 的 Postgresql 无效类

C 字符串追加