Gambas Documentation
Aperçu du Langage
À traduire
Code Snippets
Comment faire ...
Compilation et installation
Composants
gb
gb.args
gb.cairo
gb.clipper
gb.complex
gb.compress
gb.crypt
gb.db
gb.db.form
gb.dbus
gb.debug
gb.desktop
gb.desktop.gnome.keyring
gb.eval
gb.eval.highlight
gb.form
gb.form.dialog
gb.form.editor
gb.form.mdi
gb.gmp
gb.gsl
gb.gtk
gb.gtk3
gb.gui
gb.image
gb.image.effect
gb.image.imlib
gb.image.io
gb.inotify
gb.libxml
gb.media
gb.mysql
gb.net
gb.net.curl
gb.net.smtp
gb.openal
gb.opengl
gb.opengl.glsl
gb.opengl.glu
gb.opengl.sge
gb.option
gb.pcre
.Regexp.Submatch
.Regexp.Submatches
RegExp
_new
Anchored
BadMagic
BadOption
BadUTF8
BadUTF8Offset
Callout
Caseless
Compile
DollarEndOnly
DotAll
Exec
Extended
Extra
MatchLimit
MultiLine
NoAutoCapture
NoMatch
NoMemory
NoSubstring
NotBOL
NotEmpty
NotEOL
NoUTF8Check
Null
Offset
Pattern
Subject
SubMatches
Text
Ungreedy
UnknownNode
UTF8
gb.pdf
gb.qt4
gb.qt4.ext
gb.qt4.opengl
gb.qt4.webkit
gb.qt5
gb.qt5.opengl
gb.report
gb.scanner
gb.sdl
gb.sdl.sound
gb.settings
gb.signal
gb.util
gb.util.web
gb.v4l
gb.vb
gb.web
gb.web.feed
gb.xml
gb.xml.html
gb.xml.rpc
gb.xml.xslt
Controls pictures
Derniers changements
Dépôt d'applications
Documentation de l'Environnement de développement
Documentation des développeurs
Documents
Indenter
Index de tous les Documents
Index du langage
Lexique
LISEZ-MOI
Manuel du wiki
Messages d'erreur
Tutoriels
Wiki License

RegExp (gb.pcre)

Cette classe représente une expression régulière, avec laquelle vous pouvez effectuer des recherches dans différentes chaînes et retrouver des sous-correspondances (les parties de la chaîne de recherche qui correspondent aux expressions entre parenthèses).

Cette classe est instanciable.

Cette classe se comporte comme un tableau en lecture seule.

Constantes
Anchored   Si cette compilation est spécifiée, le motif est forcé à être "ancré", c.à.d. qu'il est contraint à concorder avec le premier point de concordance dans la chaîne dans laquelle il est recherché (la "chaîne sujet").
BadMagic   Cette constante d'erreur PCRE n'est pas utilisée dans Gambas (pas encore.)
BadOption   Cette constante d'erreur PCRE n'est pas utilisée dans Gambas (pas encore.)
BadUTF8   Cette constante d'erreur PCRE n'est pas utilisée dans Gambas (pas encore.)
BadUTF8Offset   Cette constante d'erreur PCRE n'est pas utilisée dans Gambas (pas encore.)
Callout   Cette constante d'erreur de PCRE n'est pas (encore) utilisée dans Gambas.
Caseless   Spécifie une concordance insensible à la casse.
DollarEndOnly   Spécifie que l’expression dollar ($) ne doit pas concorder avec une nouvelle ligne à la fin d’une chaîne sujet, mais seulement la fin de la chaîne actuelle. Par défaut, un dollar concorde avec la fin de la chaîne avec ou sans une nouvelle ligne le précédant.
DotAll   Spécifie que l'expression régulière point (.) correspond à la fin de ligne, vous permettant ainsi de traiter un texte multi-ligne comme une longue ligne.
Extended   Spécifie la syntaxe expressions regulières étendues. Dans ce mode, les blancs et les commentaires sont autorisés à l'intérieur de vos expressions régulières. Les commentaires sont dans le style Perl, c'est à dire qu'ils commencent par un dièse (#) et continuent jusqu'à la ligne suivante.
Extra   Cette option de compilation a été inventée pour activer des fonctionnalités additionnelles de PCRE qui sont incompatibles avec Perl, mais actuellement très peu utilisées.
Greedy  
MatchLimit   Specifie le nombre maximum de concordances à retourner.
MultiLine   Spécifie que le texte sujet est multiligne, ainsi les modificateurs caret (^) et dollar ($) concorderont avec les débuts et fins de lignes n’importe où à l’intérieur du texte.
NoAutoCapture   Si cette option de compilation est spécifiée, elle inhibe l'utilisation de parenthèses de capture dénombrées dans le patron.
NoMatch   Cette constante d'erreur PCRE n'est pas utilisée dans Gambas (pas encore.)
NoMemory   Cette constante d'erreur de PCRE n'est pas (encore) utilisée dans Gambas.
NoSubstring   Cette constante d'erreur de PCRE n'est pas (encore) utilisée dans Gambas
NoUTF8Check   Quand l'option UTF8 est activée, la validité du patron en tant que chaîne UTF-8 est automatiquement vérifiée.
NotBOL   Avec la constante MultiLine spécifiée, indique que l’expression caret (^) ne doit pas concorder avec le début de la chaîne. Sans la constante MultiLine, indique que le caret ne doit jamais concorder avec quoique ce soit.
NotEOL   Avec la constante MultiLine spécifiée, indique que l’expression dollar ($) ne doit pas concorder avec la fin de la chaîne. Sans la constante MultiLine, indique que le dollar ne doit jamais concorder avec quoique ce soit.
NotEmpty   Une chaîne vide n'est pas considérée comme une concordance valide si cette option est activée. Sil y a des choix dans le patron, ils sont essayés. Si tous les choix concordent avec la chaîne vide la concordance entière échoue.
Null   Cette constante d'erreur PCRE n'est pas (encore) utilisé dans Gambas.
UTF8   Cette option force PCRE à considérer le patron et la chaîne sujet, toutes deux, comme des chaînes de caractères UTF-8 au lieu de chaînes de caractères simple octet. Cependant, elle n'est disponible que lorsque PCRE est compilé pour inclure la prise en charge UTF-8. Sinon, l'utilisation de cette option provoque une erreur.
Ungreedy   Spécifie une concordance non gourmande par défaut, comme si chaque modificateur de répétition était suivi de "?". Par exemple, avec un sujet tel que "aabaaaab" et un motif "a.+b", par défaut la concordance serait la chaîne entière, mais avec Ungreedy spécifié, la recherche retournera "aab".
UnknownNode   Cette constante d'erreur PCRE n'est pas utilisée dans Gambas (pas encore.)

Méthodes statiques
FindAll  
Match  
Replace  

Propriétés
Count  
Error  
Offset   Retourne le décalage du début de concordance, c.a.d. combien de caractères la précède dans la chaîne sujet.
Pattern   Retourne le motif de l'expression regulière.
SubMatches   Une sous-concordance est une partie de votre motif situé entre des parenthèses. Par exemple, soit le motif "brun (S+)", le premier et seul élément dans la collection des sous-concordance sera le mot suivant "brun" dans le texte sujet. Avec le sujet "Renard brun rapide", SubMatches[0] contiendra "rapide" et Submatches.Count vaudra 1.
Subject   Retourne le sujet de l'expression regulière.
Text   Contient le texte retourné par la comparaison. Avec le sujet "quick brown fox" et le motif "brown (\S+)", Text contiendra "brown fox".

Méthodes
Compile   Compile et Exec sont tous deux appelés automatiquement, si vous spécifiez un motif et un texte sujet en créant un objet RegExp.
Exec   Exec vous permet d'exécuter une expression régulière précédemment compilée envers un texte sujet. C’est surtout utile quand vous avez beaucoup de textes différents que vous voulez traiter, car vous pouvez compiler l’expression régulière une seule fois et utiliser Exec de manière répétitive pour accroître la vitesse.

Exemple

Soit l’expression régulière :

vieux (\S+)

et la chaîne de recherche :

Portez ce vieux whisky au juge blond qui fume.

la propriété Text de votre objet Regexp sera :

vieux whisky

et sa propriété Submatches[1].Text sera :

whisky

C'est juste un exemple simple de ce que les expressions régulières peuvent faire pour vous lors de l'analyse syntaxique des entrées textuelles ; ce sont vraiment de très puissants outils. Par exemple, l'expression régulière suivante vous permet d'extraire les adresses e-mail valides :

(?i)\b[a-z0-9._%\-]+@[a-z0-9._%\-]+\.[A-Z]{2,4}\b

Voir aussi