`
grape927
  • 浏览: 73645 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

Pattern例子

    博客分类:
 
阅读更多
package com.test;

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

public class RegexTest {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		System.out.println("Enter pattern:");
		String patternStr = in.nextLine();
		Pattern pattern = null;
		try {
			pattern = Pattern.compile(patternStr);
		} catch (Exception e) {
			System.err.println("pattern syntax error");
			System.exit(1);
		}
		while(true){
			System.out.println("Enter String to math:");
			String input = in.nextLine();
			if(null == input || input.equals("")) return;
			Matcher matcher = pattern.matcher(input);
			if(matcher.matches()){
				System.out.println("Match");
				int g = matcher.groupCount();
				if(g > 0 ){
					for (int i = 0; i < input.length(); i++) {
						for (int j = 1; j <= g; j++) {
							if(i == matcher.start()){
								System.out.println("(");
							}
							System.out.println(input.charAt(i));
						}
						for (int j = 1; j <= g; j++) {
							if(i == matcher.end()){
								System.out.println(")");
							}
							System.out.println(input.charAt(i));
							
						}
						
					}
				
				}
			} else {
				System.out.println("no match");
			}
			
		}
		
	}
}

 

分享到:
评论
1 楼 grape927 2012-02-06  
正则表达式关于替换

Pattern p = Pattern.compile("[0-9]+");
Matcher m = p.matcher("abcd123456");
String output = m.replaceAll("*");
System.out.println(output);

输出 abcd*

相关推荐

Global site tag (gtag.js) - Google Analytics