1. 程式人生 > >Java練習題14_8(第一階段基礎)

Java練習題14_8(第一階段基礎)

2018010.23 晴

正則表示式的分組功能

*案例演示A
a:切割
需求:請按照疊詞切割: “sdqqfgkkkhjppppkl”;

程式碼實現

public class demo9_regex {
	public static void main(String[] args) {
		String s1 = "sdqqfgkkkhjppppkl";
		String regex = "(.)\\1+";	//代表第一組出現一次到多次
		String []arr1 = s1.split(regex);	
		for (int i = 0; i < arr1.length; i++) {
			System.out.println(arr1[i]);
		}
	}
}

程式結果:
sd
fg
hj
kl

案例演示B
b:替換
需求:我我…我…我.要…要要…要學…學學…學.編…編編.編.程.程.程…程
將字串還原成:“我要學程式設計”。

分析:
	(1)將字串以""孔字元代替"."成 我我我我要要要要學學學學編編編程式設計程程程
	(2)將 我我我我要要要要學學學學編編編程式設計程程程  成   我要學程式設計

程式碼實現

public class demo9_regex {
	public static void main(String[] args) {
		String s1 = "我我....我...我.要...要要...要學....學學..學.編..編編.編.程.程.程..程";
		System.out.println(s1);
		System.out.println("----------");
		String regex = "\\.+";	//代表.字元出現一次到多次
		String s2 = s1.replaceAll(regex, "");
		System.out.println(s2);
		System.out.println("-----------");
		String regex2 = "(.)\\1+";	//	代表任意字元出現一次或者多次
		String s3 = s2.replaceAll(regex2, "$1");	//$1代表第一組內容
		System.out.println(s3);
		
	}
}

程式結果:
我我…我…我.要…要要…要學…學學…學.編…編編.編.程.程.程…程


我我我我要要要要學學學學編編編程式設計程程程


我要學程式設計