Heim >Datenbank >MySQL-Tutorial >Wie kann ich mithilfe regulärer Ausdrücke einen SQL-ähnlichen „LIKE'-Operator in Java implementieren?

Wie kann ich mithilfe regulärer Ausdrücke einen SQL-ähnlichen „LIKE'-Operator in Java implementieren?

Susan Sarandon
Susan SarandonOriginal
2024-12-20 22:22:11596Durchsuche

How Can I Implement an SQL-LIKE 'LIKE' Operator in Java Using Regular Expressions?

Implementierung eines SQL-ähnlichen „LIKE“-Operators in Java

In Java Implementierung eines Komparators mit derselben Semantik wie der SQL-„LIKE“. Der Operator ' kann mithilfe regulärer Ausdrücke erreicht werden. Reguläre Ausdrücke bieten eine leistungsstarke Möglichkeit, Zeichenmuster abzugleichen.

Erstellen eines Komparators mithilfe regulärer Ausdrücke

Um einen Komparator zu erstellen, der sich wie der Operator „LIKE“ verhält, können wir dies tun Verwenden Sie die folgende Syntax:

public static boolean like(String str, String pattern) {
  Pattern p = Pattern.compile(pattern);
  Matcher m = p.matcher(str);
  return m.matches();
}

So funktionieren die regulären Ausdrücke für Ihre Angaben Beispiele:

  • %ital% entspricht jeder Zeichenfolge, die irgendwo darin „ital“ enthält.
  • %gi?a% entspricht jeder Zeichenfolge, die „gi“ enthält, gefolgt von einem einzelnen Zeichen durch „a“, irgendwo darin.
  • digi% stimmt mit jeder Zeichenfolge überein, die mit „digi“ beginnt.

Auswertung Beispiele

Mit der Like-Methode können Sie Ihre angegebenen Bedingungen wie folgt auswerten:

  • like("digital", "%ital%") wird als wahr ausgewertet, weil „ digital“ enthält „ital“.
  • like(“digital“, „%gi?a%“) ergibt „true“, weil „digital“ enthält „gia“.
  • like(“digital“, „digi%“) wird als wahr ausgewertet, da „digital“ mit „digi“ beginnt.
  • like(“digital“, „�m%“ ") wird als falsch ausgewertet, da „digital“ nicht „cam“ enthält.
  • like("digital", „tal%“) wird als falsch ausgewertet, da „digital“ nicht mit beginnt "tal".

Übereinstimmende Zeichen und Punkte

Für reguläre Ausdrücke:

  • .* entspricht einer beliebigen Anzahl beliebiger Zeichen .
  • . entspricht einem einzelnen Zeichen.
  • Um einen tatsächlichen Punkt zu finden, maskieren Sie ihn als ..

Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe regulärer Ausdrücke einen SQL-ähnlichen „LIKE'-Operator in Java implementieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn