java 中split用法

来源:互联网 发布:萧技网络电视台 编辑:程序博客网 时间:2024/05/22 14:20

java.lang.string.split
split 方法
将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
stringObj.split([separator,[limit]])
参数
stringObj
必选项。要被分解的 String 对象或文字。该对象不会被 split 方法修改。
separator
可选项。字符串或 正则表达式 对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽

略该选项,返回包含整个字符串的单一元素数组。
limit
可选项。该值用来限制返回数组中的元素个数。

说明
split 方法的结果是一个字符串数组,在 stingObj 中每个出现 separator 的位置都要进行分解

separator不作为任何数组元素的部分返回。

示例1:
public class SplitDemo {
public static String[] ss=new String[20];
public SplitDemo() {
    String s = "The rain in Spain falls mainly in the plain.";
    // 在每个空格字符处进行分解。
    ss = s.split("");     

public static void main(String[] args) {
  SplitDemo demo=new SplitDemo();
  for(inti=0;i<ss.length;i++)
  System.out.println(ss[i]);
}

}

程序结果:
The
rain
in
Spain
falls
mainly
in
the
plain.

示例2:
public class SplitDemo {
public static String[] ss=new String[20];
public SplitDemo() {
    String s = "The rain in Spain falls mainly in the plain.";
    // 在每个空格字符处进行分解。
    ss = s.split("",2);    

public static void main(String[] args) {
  SplitDemo demo=new SplitDemo();
  for(inti=0;i<ss.length;i++)
  System.out.println(ss[i]);
}

}
程序结果:
The
rain in Spain falls mainly in the plain.

示例3:
public class SplitDemo {
public static String[] ss=new String[20];
public SplitDemo() {
    String s = "The rain in Spain falls mainly in the plain.";
    // 在每个空格字符处进行分解。
    ss = s.split("",20);    

public static void main(String[] args) {
  SplitDemo demo=new SplitDemo();
  for(inti=0;i<ss.length;i++)
  System.out.println(ss[i]);
}

}
程序结果:
The
rain
in
Spain
falls
mainly
in
the
plain.

 

我在应用中用到一些,给大家总结一下,仅供大家参考:
1、如果用“.”作为分隔的话,必须是如下写法:String.split("\\."),这样才能正确的分隔开,不能用String.split(".");
2、如果用“|”作为分隔的话,必须是如下写法:String.split("\\|"),这样才能正确的分隔开,不能用String.split("|");
“.”和“|”都是转义字符,必须得加"\\";
3、如果在一个字符串中有多个分隔符,可以用“|”作为连字符,比如:“acount=? and uu =? or n=?”,把三个都分隔出来,可以用String.split("and|or");
public string[] split(string regex, int limit) {
return pattern.compile(regex).split(this, limit);
}
split 的实现直接调用的 matcher 类的 split 的方法。读者已经知道,“ .”在正则表达式中有特殊的含义,因此我们使用的时候必须进行转义。
public static void main(string[] args) {
string value = “192.168.128.33″;
string[] names = value.split(”\\.”);
for (int i = 0; i < names.length; i++) {
system.out.println(names[i]);
}

}
输出结果:
192
168
128
33

原创粉丝点击