Maison > Java > javaDidacticiel > Comment Scanner.useDelimiter() de Java fonctionne-t-il avec les expressions régulières ?

Comment Scanner.useDelimiter() de Java fonctionne-t-il avec les expressions régulières ?

Linda Hamilton
Libérer: 2024-11-23 07:38:08
original
300 Les gens l'ont consulté

How Does Java's Scanner.useDelimiter() Work with Regular Expressions?

Comprendre les délimiteurs avec Scanner.useDelimiter en Java

La classe Scanner en Java fournit la méthode useDelimiter, vous permettant de spécifier un délimiteur (un caractère ou un motif) qui sépare jetons. Cependant, l’utilisation de délimiteurs peut prêter à confusion pour les débutants. Décomposons-le en termes plus simples.

Considérez l'extrait :

sc = new Scanner(new File(dataFile));
sc.useDelimiter(",|\r\n");
Copier après la connexion

Dans cet exemple, le délimiteur est défini comme une combinaison d'une virgule (",") et d'un retour chariot suivi d'une nouvelle ligne ("rn"). Le scanner utilisera ce délimiteur pour séparer les jetons dans le fichier de données.

Comprendre les expressions régulières

Le délimiteur que vous spécifiez dans useDelimiter est une expression régulière. Les expressions régulières sont des modèles utilisés pour faire correspondre des caractères ou des séquences. Le délimiteur ",|rn" précise qu'un jeton se termine soit par une virgule, soit par un retour chariot suivi d'une nouvelle ligne.

Un exemple

Prenons un exemple :

String input = "1 fish 2 fish red fish blue fish";
Scanner s = new Scanner(input).useDelimiter("\s*fish\s*");
System.out.println(s.nextInt());   // prints: 1
System.out.println(s.nextInt());   // prints: 2
System.out.println(s.next());      // prints: red
System.out.println(s.next());      // prints: blue
s.close();
Copier après la connexion

Dans cet exemple, le délimiteur est "spoissons". Le \s* indique qu'il peut y avoir n'importe quel nombre d'espaces (y compris zéro) avant ou après le mot « poisson ». Cela signifie que le scanner fera correspondre et extraira des jetons tels que "1 poisson", "2 poissons", etc.

Conclusion

N'oubliez pas que lorsque vous utilisez useDelimiter en Java, il est important de comprendre les règles régulières. expressions. Vous pouvez trouver des didacticiels détaillés en ligne pour améliorer vos connaissances sur les modèles d'expressions régulières. Avec une bonne compréhension des délimiteurs et des expressions régulières, vous pouvez analyser et extraire efficacement des données de fichiers texte à l'aide de la classe Scanner.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal