程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> 利用正則表達式匹配輸入內容

利用正則表達式匹配輸入內容

編輯:關於C++
//利用正則表達式匹配輸入內容
package regex;


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


public class RegexTest {


public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
System.out.println("Enter pattern:");
String patternString = in.nextLine();
Pattern pattern = Pattern.compile(patternString);
while(true){
System.out.println("Enter String to match: ");
String input = in.nextLine();
if(input == null || 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(j) && i == matcher.end(j)){
System.out.println("()");
}
}

for(int j = 1; j <= g; j++){
if(i == matcher.start(j) && i != matcher.end(j)){
System.out.println('(');
}
}
System.out.println(input.charAt(i));

for(int j = 1; j <= g; j++){
if(i + 1 != matcher.start(j) && i + 1 == matcher.end(j)){
System.out.println(')');
}
}
}
System.out.println();
}
}
else
System.out.println("No match");

}
}


}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved