知识补充

  1. String的split方法支持正则表达式;

  2. 正则表达式\s表示匹配任何空白字符,+表示匹配一次或多次。

有了以上补充知识,下面的内容就很好理解了。

一、待分割字符串

待分割字符串为如下:

String str = "a  b     c  d e f      g"

其中,字符串中的的空白分别为:单个空格,多个空格,tab制表符。

二、使用一个或多个空格分割字符串

正确代码如下:

String [] arr = str.split("\\s+");
for(String ss : arr){
System.out.println(ss);
}

作为对比,错误代码如下:

String [] arr2 = str.split(" ");
for(String ss : arr2){
System.out.println(ss);
}

三、分割结果

使用正确代码分割结果:

a
b
c
d
e
f
g

使用错误代码分割结果:

a

b

c

d
e
f g
四:编写的程序
    public static void main(String args[]) {

        String line = "good12 morning34 good56 night78";

        //对String进行split之后的数组的输出
String[] tt=line.split("\\s+");
for(String s:tt)
{
System.out.println(s);
}
System.out.println("#####");
} 输出结果为
good12
morning34
good56
night78

 

JAVA 一个或多个空格分割字符串的更多相关文章

  1. Java 以空格分割字符串

    Java中使用类似于 str.split("/"); 的方法可以很方便的实现将一个字符串分割为数组, 但是如果分隔符是一个(或几个)空格呢?? 我们的本能反应或许应该是 str.s ...

  2. java和js根据一个或者多个空格截取字符串

    java: String str = "张三 fw1234"; String s[] = str.split("\\s+"); js: var str=&quo ...

  3. js 正则用空格分割字符串

    var filename = "ASDFK*SADF+ALDLAS-LDKFADFa*seAc tion.java";var arr = filename.split(/\*|\- ...

  4. java.lang.string split 以点分割字符串无法正常拆分字符串

    //错误的做法String ip="192.168.11.23"; String[] spstr_IP=ip.split(".");//这种方式无法拆分在ip字 ...

  5. Java开发笔记(三十七)利用正则串分割字符串

    前面介绍了处理字符串的常用方法,还有一种分割字符串的场景也很常见,也就是按照某个规则将字符串切割为若干子串.分割规则通常是指定某个分隔符,根据字符串内部的分隔符将字符串进行分割,例如逗号.空格等等都可 ...

  6. java将一个或者多个空格进行分割

    public static void main(String[] args) { String s = "GET /index.html HTTP/1.1";//字符串s由“GET ...

  7. 【数据库】MySql分割字符串

    上论坛时看到一个骨骼清奇的分割字符串算法. DROP TABLE IF EXISTS Tmp_AreaCode; CREATE TABLE Tmp_AreaCode( string ) )ENGINE ...

  8. Java StringTokenizer分割字符串

    除了String本身的split方法,JDK在很早就提供了StringTokenizer这个类来分割字符串: 不过,由于正则表达式和String本身的功能越来越多,StringTokenizer已经被 ...

  9. js,java,jstl多分隔符分割字符串

    1.js多分隔符 分割字符串 var username = “zhao,li;wang.liu”: var arr = str.split(/;|:|,|,|./);  括号里面可以写多分割符号,中英 ...

随机推荐

  1. Android两个独立的应用跳转实现方式小结

    在Android应用实现过程中,有时候会遇到应用之间相互跳转的情况,比如跳转至系统设置界面.WiFi设置界面.或者其它的用户实现的应用主界面等等.这里总结了几种常见的打开其它应用activity的方式 ...

  2. c#中序列化

    序列化(Serialization)是.NET平台的特性之一.1.为什么要序列化:首先你应该明白系列化的目的就不难理解他了.系列化的目的就是能在网络上传输对象,否则就无法实现面向对象的分布式计算.比如 ...

  3. IIS 应用程序池.NET40 重新注册

    32位的Windows:---------------------------------------------------------------------------1. 运行->cmd ...

  4. expect的爱恨情仇

    背景 openvpn生成证书想把它做成一键化,这样添加新用户时候就方便 遇到的问题 我的代码 gg_vpn_keys.exp #!/usr/bin/expect set user [lindex $a ...

  5. android中常用的读取文件的用法如下

    1. 从resource的raw中读取文件数据: String res = ""; try{ //得到资源中的Raw数据流 InputStream in = getResource ...

  6. Theano2.1.4-基础知识之图结构

    来自:http://deeplearning.net/software/theano/tutorial/symbolic_graphs.html Graph Structures Theano是将符号 ...

  7. 自定义圆形控件RoundImageView并认识一下attr.xml

    今天我们来讲一下有关自定义控件的问题,今天讲的这篇是从布局自定义开始的,难度不大,一看就明白,估计有的同学或者开发者看了说,这种方式多此一举,但是小编我不这么认为,多一种解决方式,就多一种举一反三的学 ...

  8. Javascript 模块化开发上线解决方案

    最近又换部门了,好频繁地说...于是把这段时间搞的小工具们简单整理了一下,作了一个小的总结.这次用一个简单业务demo来向大家介绍一下Javascript模块化开发的方式和自动化合并压缩的一些自己的处 ...

  9. hihocoder 1260

    之前做过的oj, acm题目忘了很多了, 又要开始要刷题了, go on! #1260 : String Problem I 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描 ...

  10. 1110MySQL select实现原理

    转自http://www.jianshu.com/p/NsWbRv 工作中需要借鉴MySQL对于select的具体实现,在网上搜了很久,几乎都是介绍原理的,对于实现细节都没有介绍,无奈之下只得自己对着 ...