用多个空格分割一个string

我想分割一个string

"first middle last" 

String.split() 。 但是,当我试图分裂它,我得到

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

我尝试使用String.isEmpty()检查空string后,我分裂他们,但我不能在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"}但是不知道怎么做。

谢谢您的帮助!

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

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

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

如果你有一个string

 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,}部分定义了至less需要2到几乎无穷大的空白字符才能进行分割。

由于split()使用正则expression式 ,因此可以使用s.split("\\s+")来将分隔符设置为任意数量的空格字符。

如何使用Android SDK提供的一些东西。

 TextUtils.split(stringToSplit, " +"); 

这对我有效。

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