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

Wie verwendet man Java RegEx, um eine Reihe von Zeichen zu matchen?

Um bestimmte Zeichenfolgen zu entsprechen, d.h. um alle Zeichen zwischen zwei bestimmten Zeichen in einer Sequenz zu entsprechen, kann der Zeichensatz verwendet werden 

[a-z]
  • Ausdrucksbedeutung " [a-zA-Z] "akzeptiert alle englischen Buchstaben.

  • Ausdrucksbedeutung " [0-9 35] "akzeptiert3und5andere Ziffern.

Beispiel1

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
   public static void main(String args[]) {
      //String von Benutzer lesen
      System.out.println("Geben Sie einen String ein");
      Scanner sc = new Scanner(System.in);
      String input = sc.nextLine();
      String regex = "^[a-zA-Z0-9]*$";
      //Regulären Ausdruck kompilieren
      Pattern pattern = Pattern.compile(regex);
      //Sucher-Objekt abrufen
      Matcher matcher = pattern.matcher(input);
      if(matcher.matches()) {
         System.out.println("Treffer");
      } else {
         System.out.println("Kein Treffer");
      }
   }
}

Ausgabe1

Geben Sie einen String ein
Hallo
Treffer

Ausgabe2

Geben Sie einen String ein
sample#
Kein Treffer

Beispiel2

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
   public static void main(String args[]) {
      //String von Benutzer lesen
      System.out.println("Geben Sie einen String ein");
      Scanner sc = new Scanner(System.in);
      String input = sc.nextLine();
      String regex = "[0-9&&[^35]]";
      //Regulären Ausdruck kompilieren
      Pattern pattern = Pattern.compile(regex);
      //Sucher-Objekt abrufen
      Matcher matcher = pattern.matcher(input);
      int count = 0;
      while(matcher.find()) {
         count++;
      }
      System.out.println("Vorkommnisse: ");+count);
   }
}

Ausgaberesultat

Geben Sie einen String ein
111223333555689
Vorkommnisse: 8