簡單的正則表達式 Regex

package com.alexgaoyh.regex.test;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class TestSample {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		RegexContains();
		RegexSplit();
		RegexReplace();
		RegexReplace2();
	}

	public static void RegexContains(){
		//查找以Java開頭,任意結尾的字符串
		Pattern pattern = Pattern.compile("^Java.*");
		Matcher matcher = pattern.matcher("Java不是人");
		boolean b= matcher.matches();
		//當條件滿足時,將返回true,否則返回false
		System.out.println(b);
	}
	
	public static void RegexSplit(){
		//以多條件分割字符串時
		Pattern pattern = Pattern.compile("[, |]+");
		String[] strs = pattern.split("Java Hello World  Java,Hello,,World|Sun");
		for (int i=0;i<strs.length;i++){
			System.out.print(strs[i] + "^^^^^^");
		} 
		System.out.println("");
	}
	
	public static void RegexReplace(){
		Pattern pattern = Pattern.compile("正則表達式");
		Matcher matcher = pattern.matcher("正則表達式 Hello World,正則表達式 Hello World");
		//替換第一個符合正則的數據 文字替換(首次出現字符)
		System.out.println(matcher.replaceFirst("Java"));
		//文字替換(全部)
		//System.out.println(matcher.replaceAll("Java"));
	}

	public static void RegexReplace2(){
		//文字替換(置換字符)
		Pattern pattern = Pattern.compile("正則表達式");
		Matcher matcher = pattern.matcher("正則表達式 Hello World,正則表達式 Hello World ");
		StringBuffer sbr = new StringBuffer();
		while (matcher.find()) {
			matcher.appendReplacement(sbr, "Java");
		}
		matcher.appendTail(sbr);
		System.out.println(sbr.toString());
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章