javaSE String类,split(),replaceAll(),正则表达式

时间:2022-09-06 18:48:24


Demo.java:

package cn.xxx.demo;
/*
 *  String[] split(String 正则的规则)
 *    "abc".split("a") 使用规则将字符串进行切割
 *     
 *  String replaceAll(String 正则规则,String 新字符串)
 *    "abc0123".repalceAll("[\\d]","#")
 *    安装正则的规则,替换字符串
 */

public class Demo {
	public static void main(String[] args) {
		//split_2();
		replaceAll_1();
	}
	
	/*
	 * "Hello12345World6789012"将所有数字替换掉
	 * String类方法replaceAll(正则规则,替换后的新字符串)
	 */
	public static void replaceAll_1(){
		String str = "Hello12345World6789012";
		str = str.replaceAll("[\\d]+", "#");
		System.out.println(str);
	}
	/*
	 * String类方法split对字符串进行切割
	 * 192.168.105.27 按照 点切割字符串
	 */
	public static void split_3(){
		String ip = "192.168.105.27";
		String[] strArr = ip.split("\\."); // \\表示转义
		System.out.println("数组的长度"+strArr.length);
		for(int i = 0 ; i < strArr.length ; i++){
			System.out.println(strArr[i]);
		}
	}
	
	/*
	 * String类方法split对字符串进行切割
	 * 18 22 40 65 按照空格切割字符串
	 */
	public static void split_2(){
		String str = "18 22   40  65";
		String[] strArr = str.split(" +");  // "+"在正则表达式中表示数量词(至少一个)
		System.out.println("数组的长度"+strArr.length);
		for(int i = 0 ; i < strArr.length ; i++){
			System.out.println(strArr[i]);
		}
	}
	
	/*
	 *  String类方法split对字符串进行切割
	 *  12-25-36-98  按照-对字符串进行切割
	 */
	public static void split_1(){
		String str = "12-25-36-98";
		//按照-对字符串进行切割,String类方法split
		String[] strArr = str.split("-");
		System.out.println("数组的长度"+strArr.length);
		for(int i = 0 ; i < strArr.length ; i++){
			System.out.println(strArr[i]);
		}
	}
}