Wie verwendet man String.matches() als Ersatz für die Methode startWith() in Java?
String startsWith(), wie die Syntax vermuten lässt, ist diese Methode in der String-Klasse vorhanden , die für das Testen verantwortlich ist, ob eine Zeichenfolge mit dem angegebenen Präfix beginnt, beginnend mit dem ersten Index.
Syntax:
public boolean startsWith(String prefix)
Parameter: Das abzugleichende Präfix.
Rückgabewert: Gibt true zurück, wenn die durch das Argument dargestellte Zeichenfolge ein Präfix der durch diese Zeichenfolge dargestellten Zeichenfolge ist; falsch sonst.
Methoden:
Es gibt zwei Ersetzungen von startWith(), wie unten aufgeführt:
- Reguläre Ausdrücke
- matches()-Methode der String-Klasse
Lassen Sie uns beide Methoden diskutieren, die wie folgt sind:
Methode 1: Verwenden von regulären Ausdrücken
Reguläre Ausdrücke oder Regex (kurz) ist eine API zum Definieren von Zeichenfolgenmustern, die zum Suchen, Manipulieren und Bearbeiten einer Zeichenfolge in Java verwendet werden können. E-Mail-Validierung und Passwörter sind einige Bereiche von Zeichenfolgen, in denen Regex häufig verwendet wird, um die Einschränkungen zu definieren. Reguläre Ausdrücke werden im Paket java.util.regex bereitgestellt. Diese besteht aus 3 Klassen und 1 Schnittstelle. Das java.util.regex-Paket besteht hauptsächlich aus den folgenden drei Klassen, die unten in tabellarischer Form wie folgt dargestellt werden:
- Muster
- Matcher
- PatternSyntaxException
Beispiel
Java
// java Program to Illustarte Usage of Regular Expressions // as a Substitute of startWith() method // Importing Matcher and Pattern classes // from the java.util.regex package import java.util.regex.Matcher; import java.util.regex.Pattern; // Main class public class GFG { // Main driver method public static void main(String args[]) { // Declaring and initialising custom string String Str = new String("Welcome to geeksforgeeks"); // Display message for better readibility System.out.print( "Check whether string starts with Welcome using startsWith : "); // Testing the prefix using startsWith() System.out.println(Str.startsWith("Welcome")); // Testing the prefix using Regex() by creating // objects of Pattern and Matcher class Pattern pattern = Pattern.compile("Welcome.*"); Matcher m = pattern.matcher(Str); // Print commands System.out.print( "Check whether string starts with Welcome using Regex: "); System.out.println(m.find() ? "true" : "false"); } }
Überprüfen Sie, ob der String mit Welcome beginnt, indem SiestartsWith : true verwenden Prüfen Sie mit Regex, ob der String mit Welcome beginnt: true
Methode 2: Verwendung der Methode matchs() der Klasse String
Die Methode String.matchs() gibt an , ob diese Zeichenfolge mit dem angegebenen regulären Ausdruck übereinstimmt oder nicht. Ein Aufruf dieser Methode der Form str.matches(regex) liefert genau dasselbe Ergebnis wie der Ausdruck Pattern.matches(regex, str).
Syntax:
public boolean matches(String regex)
Parameter: Der reguläre Ausdruck, mit dem dieser String abgeglichen werden soll.
Rückgabewert: Diese Methode gibt true zurück, wenn und nur wenn diese Zeichenfolge mit dem angegebenen regulären Ausdruck übereinstimmt.
Beispiel
Java
// java Program to Illustarte Usage of String.matches() // as a Substitute of startWith() method // Importing required classses import java.util.*; // Main class public class GFG { // Main driver method public static void main(String args[]) { // Declaring and initialising string String Str = new String("Welcome to geeksforgeeks"); // Testing the prefix using startsWith() // Work taken - 'Welcome' System.out.print( "Check whether string starts with Welcome using startsWith : "); System.out.println(Str.startsWith("Welcome")); // Testing the prefix using Regex() // Word to be matched - 'Welcome' System.out.print( "Check whether string starts with Welcome using Matches: "); System.out.println(Str.matches("Welcome(.*)")); } }
Überprüfen Sie, ob der String mit Welcome beginnt, indem SiestartsWith : true verwenden Überprüfen Sie, ob die Zeichenfolge mit „Welcome“ beginnt, indem Sie „Matches“ verwenden: „true“.