Maison  >  Article  >  Java  >  Comment définir et utiliser des expressions régulières et des méthodes Java

Comment définir et utiliser des expressions régulières et des méthodes Java

PHPz
PHPzavant
2023-04-18 13:16:031116parcourir

1. Expression régulière :

a.Définition :

Les expressions régulières définissent des modèles de chaînes.

Les expressions régulières peuvent être utilisées pour rechercher, modifier ou manipuler du texte.

Les expressions régulières ne se limitent pas à une seule langue, mais il existe des différences subtiles dans chaque langue.

En Java, une chaîne est en fait une simple expression régulière. Par exemple, l'expression régulière Hello World correspond à la chaîne « Hello World ».

Le package ava.util.regex comprend principalement les trois classes suivantes :

1.Classe Pattern : l'objet pattern est une représentation compilée d'une expression régulière. La classe Pattern n'a pas de constructeur public.

Pour créer un objet Pattern, vous devez d'abord appeler sa méthode compilée statique publique, qui renvoie un objet Pattern. Cette méthode accepte une expression régulière comme premier paramètre.

2.Classe Matcher : L'objet Matcher est un moteur qui interprète et fait correspondre les chaînes d'entrée. Comme la classe Pattern, Matcher n'a pas de constructeur public.

Vous devez appeler la méthode matcher de l'objet Pattern pour obtenir un objet Matcher.

3.PatternSyntaxException : PatternSyntaxException est une classe d'exceptions non obligatoire qui représente une erreur de syntaxe dans un modèle d'expression régulière.

b. Groupe de capture :

La capture de groupe est une méthode de traitement de plusieurs caractères comme une seule unité. Elle est créée en regroupant les caractères entre parenthèses. Jetons un coup d'œil au code suivant.

String line = "Cette commande a été passée pour QT3000 ! OK ?" ; //Entrez

String pattern = "(\D*)(\d+)(.*)" //Nos trois groupes de capture

Puisque nous en avons trois (), trois groupes seront finalement formés. Selon l'expression régulière ci-dessus, le résultat est :

. Cette commande a été passée pour QT

3000

! D'accord ?

Il convient de noter que si vous utilisez un objet Matcher, alors group(0) sera la chaîne d'origine (la chaîne entière).

Dans le développement réel, pour plus de commodité, nous utilisons rarement la classe Pattern ou la classe Matcher directement, mais utilisons les méthodes de la classe String

Vérification : correspondances booléennes (String regex)

Split : String[] split (String regex)

Remplacement : String replaceAll (String regex, String remplacement)

c. Grammaire :

Dans d'autres langues, \ signifie : je souhaite insérer une barre oblique inverse normale (littérale) dans l'expression régulière, veuillez ne pas lui donner de signification particulière.

En Java, \ signifie : je souhaite insérer une barre oblique inverse d’expression régulière, afin que les caractères qui la suivent aient une signification particulière.

Par conséquent, dans d'autres langages (tels que Perl), une barre oblique inverse suffit pour avoir l'effet d'échappement, mais en Java, deux barres obliques inverses sont nécessaires dans l'expression régulière pour être analysée comme effet d'échappement dans d'autres langages. On peut aussi simplement comprendre que dans les expressions régulières Java, deux \ représentent un dans d'autres langages. C'est pourquoi l'expression régulière représentant un seul chiffre est \d, et l'expression régulière représentant une barre oblique inverse ordinaire est \\ .

2.Méthode Java :

Java est un langage orienté objet, il n'y a donc pas de fonctions, seulement des méthodes, mais en général, les fonctions et les méthodes sont similaires dans leur application.

a.Définition :

Nom de la méthode de type de valeur de retour du modificateur (nom du paramètre de type de paramètre)

{

...

Corps de méthode

...

renvoyer la valeur de retour ;

}

Regardons un exemple pratique. Cette méthode renvoie la valeur maximale des deux paramètres :

. public static int max(int ​​​​num1, int num2) {

résultat int ;

si (num1 > num2)

résultat = num1;

sinon

résultat = num2;

résultat de retour ;

}

C'est fondamentalement la même chose qu'une fonction, mais notez que JAVA est un objet, vous devez donc faire attention à quelle méthode se trouve dans quelle classe.

b.Fonctionnalités Java :

Java prend en charge la surcharge de fonctions, tout comme C++.

Java prend en charge la transmission de paramètres variables du même type à une méthode :

printMax(34, 3, 3, 2, 56.5);

printMax(nouveau double[]{1, 2, 3});

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer