English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

flags()-Methode im Java-Muster und Beispiel

java.regexDas Musterklassepaket ist die kompilierte Darstellung von regulären Ausdrücken.

Dieser Klassecompile()Dieses Verfahren akzeptiert Zeichenfolgenwerte, die reguläre Ausdrücke darstellen, und gibt zurückPatternObjekt, hier ist die Signatur dieser Methode.

static Pattern compile(String regex)

Eine andere Variante dieses Verfahrens akzeptiert Ganzzahlwerte, die Marken darstellen. Hier ist die Signatur der Methode compile mit zwei Parametern.

static Pattern compile(String regex, int flags)

DieseMusterDiese Klasse bietet verschiedene Domänen, jede repräsentiert eine Marke

NummerSpalte und Beschreibung
1CANON_EQ
nur wenn zwei Zeichensätze normgerecht übereinstimmennurPassen auf.
2CASE_INSENSITIVE
Passen auf Zeichen, ohne Gross-/Kleinschreibung zu unterscheiden.
3Kommentare
Erlaubt Leerzeichen und Musterkommentare.
4DOTALL
Aktiviert den dotall-Modus. Der Metazeichen „.“ passt auf alle Zeichen, einschließlich Zeilenende.
5LITERAL
Aktiviert die Wortanalyse des Musters. Das bedeutet, dass alle Meta-Zeichen und Escape-Sequenzen in der Eingabesequenz als Textzeichen betrachtet werden.
6MULTILINE
Aktiviert den Mehrzeilenmodus, d.h. die gesamte Eingabesequenz wird als ein Zeilen betrachtet.
7UNICODE_CASE
Aktiviert dieErkennenUnicode-Kapitälchenfaltung, d.h. zusammen mit CASE_INSENSITIVE verwendet. Wenn Unicode-Zeichen mit regulärem Ausdruck gesucht werden, werden beide Fälle von Unicode-Zeichen übereinstimmen.
8UNICODE_CHARACTER_CLASS
Aktiviert die prädefinierten Zeichensätze und die POSIX-Zeichensätze in der Unicode-Version.
9UNIX_LINES
Diese Marke aktiviert das Unix- Zeilenmodus.

Dieser Klasseflags()Die Methode gibt die Zeichenfolgenkombination zurück, die im aktuellen Muster verwendet werden.

Beispiel

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class COMMENTES_Example {
   }
      public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("请输入您的姓名: ");
      String name = sc.nextLine();
      System.out.println("请输入您的出生日期: ");
      //String dob = sc.nextLine();-正则表达式以MM-DD
      YYY格式接受日期1"(-2]|0[1-9)]/ String regex = "^( + # For Month
"3"(1[012]|[-9]|0[1-9)]/ # For Date
"
+ "[0-9]{4}$ # For Year";
      //创建一个Pattern对象
      Pattern pattern = Pattern.compile(regex, Pattern.COMMENTS);
      //创建一个Matcher对象
      Matcher matcher = pattern.matcher(dob);
      boolean result = matcher.matches();
      if(result) {
         System.out.println("提供的出生日期有效");
      } else {
         System.out.println("提供的出生日期无效");
      }
      System.out.println("使用的标志: ");+ pattern.flags());
   }
}

输出结果

请输入您的姓名:
Krishna
请输入您的出生日期:
09/26/1989
提供的出生日期有效
使用的标志: 4