一致するすべてのJava正規表現のリストを取得する
Javaには、リストを使用して結果をwhileループに追加するために必要なすべての一致のリストを取得するメソッドはありません。
例
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ListOfMatches{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter input text: ");
String input = sc.nextLine();
String regex = "\\d+";
//Creating a pattern object
Pattern pattern = Pattern.compile(regex);
ArrayList list = new ArrayList();
//Matching the compiled pattern in the String
Matcher matcher = pattern.matcher(input);
while (matcher.find()) {
list.add(matcher.group());
}
Iterator it = list.iterator();
System.out.println("List of matches: ");
while(it.hasNext()){
System.out.println(it.next());
}
}
} 出力
Enter input text: sample 1432 text 53 with 363 numbers List of matches: 1432 53 363
-
Java正規表現のサブ式(?> re)を説明する
部分表現/メタ文字「 re) 」は、バックトラックなしで独立したパターンに一致します。 例 import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class PatternExample { public static void main(String args[]) { //Reading String from user System.out.
-
Java正規表現のメタ文字\Bについて説明します。
部分表現/メタ文字「\B 」は単語以外の境界に一致します。 例1 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 = "\\Bcause"; Scanner sc =