1. 程式人生 > >正則表達式練習題

正則表達式練習題

upper dff fda 大寫 dad 字符 you else uppercase

//第一題:查找“asdfjvjadsffvaadfkfasaffdsasdffadsafafsafdadsfaafd,該字符串中有多少個af”
// String str = "asdfjvjadsffvaadfkfasaffdsasdffadsafafsafdadsfaafd";
// Pattern p = Pattern.compile("af");
// Matcher m = p.matcher(str);
// int sum = 0;
// while(m.find()){
// sum++;
// }
// System.out.println(sum);

//第二題:輸入任意一個字符串,如:“abDEe23dJfd343dPOddfe4CdD5ccv!23rr”。取出該字符串中所有的字母。順序不能改變!並把大寫字母變成小寫,小寫字母變成大寫!
String str1 = "abDEe23dJfd343dPOddfe4CdD5ccv!23rr";
String str22 = str1.replaceAll("([^a-zA-Z]|)", "");
StringBuffer buf = new StringBuffer(str22.length());
String upper = str22.toUpperCase();
String lower = str22.toLowerCase();
for(int i = 0;i<str22.length();i++){
if(str22.charAt(i)==upper.charAt(i)){
buf.append(lower.charAt(i));
}else{
buf.append(upper.charAt(i));
}
}
System.out.println(buf);
//第三題:寫一個程序可以對兩個字符串進行測試,得知第一個字符串是否包含在第二個字符串中。如字符串”PEN”包含在字符串“INDEPENDENT”中。
// System.out.print("請輸入第一個字符串:");
// Pattern tmp = Pattern.compile(scan.nextLine().trim());
// System.out.print("請輸入第二個字符串:");
// String b = scan.nextLine().trim();
// Matcher end = tmp.matcher(b);
// if(end.find()){
// System.out.println(tmp+"包含在"+b);
// }else{
// System.out.println("不包含");
// }
//第四題:編寫程序,統計出字符串“want you to know one thing”中字母n和字母o的出現次數。
String str2 = "want you to know one thing";
Pattern tmp1 = Pattern.compile("n");
Pattern tmp2 = Pattern.compile("o");
Matcher sb = tmp1.matcher(str2);
int i = 0;
while(sb.find()){
i++;
}
System.out.println("n出現的次數"+i);
Matcher sb1 = tmp2.matcher(str2);
int j = 0;
while(sb1.find()){
j++;
}
System.out.println("o出現的次數"+j);

正則表達式練習題