- package com.hanmiao.exam;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- public class Example{
- public static int SIZE = 25;
- public static String[] patterns = {"abc","*", "*abc", "*abc", "a*bc", "a*bc", "a*", "a*", "a*", "a*"
- , "*abc*", "*****","...",".*", ".bc*", ".b*c*a", "*", "abc", "*a", "a"
- , ".a*c", "a.*b", "..", "", ""};
- public static String[] candidates = {"abc", "abc", "abc", "aaabbbabc", "aaabbbabc", "abc", "abc", "a", "aa", "abcdef"
- , "abc", "abc", "abc", "abc","abc", "abca", "", "abcd", "abcd", ""
- , "abc", "abc", "abc", "", "abc"};
- public static void main(String[] args){
- for(int i = 0; i < SIZE; i ++){
- System.out.println("pattern=\\"" + patterns[i] + "\\"\\t candidate=\\"" + candidates[i] + "\\"\\t result=" + parser(patterns[i], candidates[i]));
- }
- }
- public static String parser(String pattern, String candidate){
- if(pattern.length() == 0){
- return "reject";
- }
- pattern = pattern.replace("*", ".*");
- Pattern p = Pattern.compile(pattern);
- Matcher m = p.matcher(candidate);
- return m.matches() ? "accept" : "reject";
- }
- }
- //该片段来自于http://www.codesnippet.cn/detail/250620134283.html
来源: http://www.codesnippet.cn/detail/250620134283.html