java 用多个空格拆分字符串

zbq4xfa0  于 2023-02-02  发布在  Java
关注(0)|答案(7)|浏览(133)

我想拆分一个字符串

"first     middle  last"

String.split()但是当我试图拆分它时

String[] array = {"first","","","","middle","","last"}

我尝试使用String.isEmpty()来检查拆分后的空字符串,但在android中不起作用。

String s = "First  Middle Last";
String[] array = s.split(" ");
for(int i=0; i<array.length; i++) {
  //displays segmented strings here
}

我想有一种方法可以这样拆分:{"first","middle","last"},但不知道如何实现。
谢谢你的帮助!

w8ntj3qf

w8ntj3qf1#

由于split()的参数是一个正则表达式,因此可以查找一个或多个空格(" +"),而不仅仅是一个空格(" ")。

String[] array = s.split(" +");
t9eec4r0

t9eec4r02#

尝试使用此s.split("\\s+");

fjaof16o

fjaof16o3#

如果你有一个字符串

String s = "This is a test string  This is the next part    This is the third part";

并且想要得到一个数组

String[] sArray = { "This is a test string", "This is the next part", "This is the third part" }

你应该试试

String[] sArray = s.split("\\s{2,}");

{2,}部分定义了要进行拆分,至少需要2个甚至几乎无限个空白字符。

yr9zkbsy

yr9zkbsy4#

这对我很有效。

s.split(/\s+/)
var foo = "first     middle  last";

console.log(foo.split(/\s+/));
ou6hu8tu

ou6hu8tu5#

由于split()使用regular expressions,因此可以执行类似s.split("\\s+")的操作,将拆分分隔符设置为任意数量的空白字符。

ldxq2e6h

ldxq2e6h6#

使用Android SDK提供的开箱即用的东西怎么样?

TextUtils.split(stringToSplit, " +");
2exbekwf

2exbekwf7#

如果有人在找科尔丁密码

val str = "   fly me   to   the moon  "
println(str.trim().split(" +".toRegex()))

// output - [fly, me, to, the, moon]

相关问题