Java Pattern Class est une classe finale publique fournie dans le package java.util utilisée pour créer une représentation compilée d'expressions régulières. Toutes les expressions régulières sont converties en une instance de cette classe. Ils sont utilisés pour créer une instance de la classe Matcher, qui consiste en une méthode matches qui compare pour obtenir les chaînes qui correspondent aux expressions régulières et renvoie vrai si les chaînes correspondent, sinon renvoie faux. L'instance de cette classe est immuable et thread-safe, ce qui signifie que son instance n'a aucun effet sur le fonctionnement de différents threads fonctionnant simultanément.
Vous trouverez ci-dessous les méthodes de classe de modèle Java :
Commencez votre cours de développement de logiciels libres
Développement Web, langages de programmation, tests de logiciels et autres
Cette méthode permet de créer un modèle à partir de l'expression régulière donnée.
Parameters | The regular expression to be compiled in the form of string.
Example: ( .*) ( \hh) ( .*) |
PatternSyntaxException est levée lorsque la syntaxe de l'expression n'est pas valide lorsqu'elle est transmise à la méthode.
Exemple :
import java.util.regex.Pattern; public class HelloWorld { private static final String MYREGEX = " ( .*) (Learn) ( .*)?"; public static void main (String[] args) { Pattern pattern = Pattern.compile (MYREGEX); System.out.println ( "Regular Expression " +pattern.pattern ()); } }
Code :
Sortie :
Parameters
|
a. myregex: The regular expression to be compiled in the form of string. |
b. flag: Flags are the specifications that need to be provided while compiling a regular expression. Example are CASE_INSENSITIVE, MULTILINE, DOTALL, UNICODE_CASE. |
2. Compilation de modèles statiques publics (String myregex, int flag) Cette méthode permet de créer l'instance de la classe Pattern à l'aide d'une expression régulière et des indicateurs spécifiés.
myregex : L'expression régulière à compiler sous forme de chaîne.
drapeau : Les indicateurs sont les spécifications qui doivent être fournies lors de la compilation d'une expression régulière. Des exemples sont CASE_INSENSITIVE, MULTILINE, DOTALL, UNICODE_CASE.
import java.util.regex.Pattern; public class HelloWorld { private static final String REGEX = " ( .*) (Learn) ( .*)?"; public static void main (String[] args) { Pattern pattern = Pattern.compile (REGEX, Pattern.CASE_INSENSITIVE); System.out.println ( "Regular Expression " +pattern.pattern ()); } }
PatternSyntaxException est levée lorsque la syntaxe de l'expression n'est pas valide lorsqu'elle est transmise à la méthode.
IllegalArgumentException est levée si les valeurs des bits sont différentes de celles qui correspondent aux indicateurs transmis.
Exemple :Code :
Sortie :
import java.util.regex.Pattern; public class HelloWorld { private static final String REGEX = " ( .*) (Learn) ( .*)?"; public static void main (String[] args) { Pattern pattern = Pattern.compile (REGEX, Pattern.UNICODE_CHARACTER_CLASS ); System.out.println ( "Flag for UNICODE_CHARACTER_CLASS " +pattern.flags ()); Pattern pattern2= Pattern.compile (REGEX, Pattern.UNICODE_CASE ); System.out.println ( "Flag for UNICODE_CASE " +pattern2.flags ()); } }
3. drapeaux int publics ()
Cette méthode permet d'obtenir la valeur entière de l'indicateur qui a été défini lors de la compilation de l'expression régulière pour créer l'instance de la classe de modèle.
Exemple :Parameters | inputSequence: It is a sequence of character to which we need to match the compiled instance of regex in the form of a pattern object. |
Code :
Sortie :
import java.util.regex.MatchResult; import java.util.regex.Matcher; import java.util.regex.Pattern; public class HelloWorld { private static final String MYREG= " ( .*) (gu)"; private static final String SEQ ="Learning regular expression helps a lot in Artificial Intelligence"; public static void main (String[] args) { Pattern pattern = Pattern.compile (MYREG, Pattern.UNICODE_CHARACTER_CLASS ); Matcher matcherObj = pattern.matcher (SEQ); if (matcherObj.find ()) { MatchResult res = matcherObj.toMatchResult (); System.out.println ( "The offset : "+res.end ()); } } }
4. Matcher public Matcher (CharSequenceinputSequence)
Cette méthode est utilisée pour créer une instance d'un objet matcher en comparant l'expression régulière à la séquence d'entrée donnée. Cette méthode nécessite la transmission d'un paramètre et aucune exception ne sera levée.
C'est une séquence de caractères à laquelle nous devons faire correspondre l'instance compilée de regex sous la forme d'un objet modèle.
Paramètres
inputSequence :
Parameters | inputSequence: It is a sequence of character to which we need to match the compiled instance of regex in the form of a pattern object. |
MyRegex: The regular expression to be compiled in the form of string. |
Exception:
This method is used to get the regular expression from which the pattern instance has been compiled. This method requires no parameters to be passed as well as no exception will be thrown.
An example for this method is shown below with an example of the quote method.
This method is used to get the literal string after the pattern is resolved using the method’s flags. This method requires 1 parameter to be passed as well as no exception will be thrown.
Parameters | The string of regular expression that needs to be compiled. |
Example:
Code:
import java.util.regex.Matcher; import java.util.regex.Pattern; public class HelloWorld { private static String myRegx = "location$"; private static String line= "The location$ office have great capacity of seats for our employess"; private static String newEx = "Bangalore"; public static void main (String[] args) { Pattern patternObj2 = Pattern.compile (Pattern.quote (myRegx)); Matcher matcherObj1 = patternObj2.matcher (line); line= matcherObj1.replaceAll (newEx); System.out.println ( "The Regular expression defined for pattern instance is " +patternObj2.pattern ()); System.out.println ( "The Input sequence after substitution of Regular Expression "+ line); } }
Output:
This method is used to split the input String argument at every index where regular expression is found. This method requires 1 parameter to be passed as well as no exception will be thrown.
Parameters | input: The character sequence that is to be split according to the Regular expression specified. |
Example:
Code:
import java.util.regex.Pattern; public class HelloWorld { private static String REGEX = ":"; private static String INPUT = "BANGLORE:CHENNAI:GUWAHATI:AHMEDABAD"; public static void main (String[] args) { Pattern patternObj2 = Pattern.compile (REGEX); String[] result = patternObj2.split (INPUT); for (String data:result){ System.out.println (data+"\n"); } } }
Output:
This method also splits the given input sequence but upto some threshold. This method requires 2 parameters to be passed as well as no exception will be thrown.
Parameters | a. in: The character sequence that is to be split. |
b. myThreshHold: This parameter defines the threshold of splitting operation. |
Example:
Code:
import java.util.regex.Pattern; public class HelloWorld { private static String REGEX = ":"; private static String INPUT = "BANGLORE:CHENNAI:GUWAHATI:AHMEDABAD"; public static void main (String[] args) { Pattern patternObj2 = Pattern.compile (REGEX); String[] result = patternObj2.split (INPUT,3); for (String data:result){ System.out.println (data+"\n"); } } }
Output:
This method is used to get the String representation of the regular expression from which the regular expression has been compiled. This method requires no parameters to be passed as well as no exception will be thrown.
Example:
Code:
import java.util.regex.Pattern; public class HelloWorld { private static String REGEX = "location$"; public static void main (String[] args) { Pattern patternObj2 = Pattern.compile (Pattern.quote (REGEX)); System.out.println ( "toString representation of pattern instance is " +patternObj2.toString ()); } }
Output:
Pattern class is used to store the compiled representation of regular expressions from where they are passed to an instance of Matcher class to get the strings that match that regular expression. In this way, one is able to work with regular expressions more efficiently in their application.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!