English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Javaが提供するがらりん量詞を使用すると、複数回出現する表現をマッチングできます。どこで、
Exp {n}は表現expが正確にn回出現するように促します。
Exp {n,}は表現expが少なくともn回出現するように促します。
Exp {n,m}は表現expが少なくともn回、多くともm回出現するように促します。
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexExample { public static void main( String args[] ) { //正規表現は接受5文字の単語 String regex = ";\\w{5}; Scanner sc = new Scanner(System.in); System.out.println("Enter 5 input strings: "); String input[] = new String[5]; for (int i = 0; i <5; i++) { input[i] = sc.nextLine(); } //Patternオブジェクトを作成 Pattern p = Pattern.compile(regex); for(int i=0; i<5;i++) { //Matcherオブジェクトを作成 Matcher m = p.matcher(input[i]); if(m.find()) { System.out.println(input[i]+: 接受されました"); } else { System.out.println(input[i]+: 接受されませんでした"); } } } }
結果を出力
Enter 5 input strings: rama raja raghu megha malya rama: 接受されませんでした raja: 接受されませんでした raghu: 接受されました megha: 接受されました malya: 接受されました
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexExample { public static void main( String args[] ) { //正規表現でマッチする長さが2まで6の非単語文字列 String regex = ";\\W{2,6}; Scanner sc = new Scanner(System.in); System.out.println("Enter 5 input strings: "); String input[] = new String[5]; for (int i = 0; i <5; i++) { input[i] = sc.nextLine(); } //Patternオブジェクトを作成 Pattern p = Pattern.compile(regex); for(int i=0; i<5;i++) { //Matcherオブジェクトを作成 Matcher m = p.matcher(input[i]); if(m.find()) { System.out.println(input[i]+" matched"); } } } }
Enter 5 input strings: hello how are you #$#% # #$@%%#& sample text #$#% matched #$@%%#& matched
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexExample { public static void main(String args[] ) { String regex = "[a-zA-Z]{1,20}"; Scanner sc = new Scanner(System.in); System.out.println("学生の名前を入力してください:"); String name = sc.nextLine(); Pattern p = Pattern.compile(regex); Matcher m = p.matcher(name); if(m.matches()) { System.out.println("Name is appropriate"); } else { System.out.println("Name is inappropriate"); } } }
結果を出力
学生の名前を入力してください: Mouktika Name is appropriate