字符串的分割

一,字符串的分割

(1)采用正则表达式   使用split()方法切割字符串

		String s1 = "2021年5月7日";
		String[] s2 = s1.split("\\D");//采用非0~9的数字的方法分割
		for (int i =0 ; i < s2.length; i ++) {
			System.out.println(s2[i]);//输出结果2021  5   7
		}

当然,也可以使用别的符号进行分割,例如:逗号,感叹号!空格等等。

		String s1 = "you.are!a student";
		String[] s2 = s1.split("[.! ]");
		for (int i =0 ; i < s2.length; i ++) {
			System.out.println(s2[i]);//输出结果you  are   a  student
		}

(2)使用StringTokenizer类进行切割字符串,引入java.util.StringTokenize;包

import java.util.StringTokenizer;

public class Test1 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		StringTokenizer st = new StringTokenizer ("you are a student");//默认空格为分隔符
		System.out.println(st.countTokens());//计算字符串的个数
		while (st.hasMoreTokens()) {//返回是否还有分隔符
			System.out.println(st.nextToken());//返回从当前位置到下一个分隔符的字符串
		}
	}
}

也可,使用其他的分隔符,如下

public class Test1 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		StringTokenizer st = new StringTokenizer ("you.are,a!student","[.,!]");//默认空格为分隔符
		System.out.println(st.countTokens());//计算字符串的个数
		while (st.hasMoreTokens()) {//返回是否还有分隔符
			System.out.println(st.nextToken());//返回从当前位置到下一个分隔符的字符串
		}
	}
}

(3)可以引入Scanner类进行切割字符串,引入java.util.Scanner;包

import java.util.Scanner;

public class Test2 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		Scanner  sc = new Scanner("you are a student");
		sc.useDelimiter(" ");
		while (sc.hasNext()) {
			System.out.println(sc.next());
		}
	}
}

采用其他分隔符,如下;

import java.util.Scanner;

public class Test2 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		Scanner  sc = new Scanner("you.are!a,student");
		sc.useDelimiter("[.!,]");
		while (sc.hasNext()) {
			System.out.println(sc.next());
		}
	}
}

 

你可能感兴趣的:(java笔记,java)