Référence de syntaxe des expressions régulières
Vous pouvez définir et assigner des étendues d’entrée personnalisées à l’aide de la syntaxe d’expression régulière d’écriture qui est comprise par certains des reconnaissance de l’écriture manuscrite Microsoft. La syntaxe est un sous-ensemble de l' implémentation du langage des expressions régulières dans le .NET Framework.
Il existe des différences dans la façon dont les expressions régulières d’écriture manuscrite sont utilisées et la façon dont les autres types d’expressions régulières sont utilisés. La syntaxe d’écriture manuscrite est utilisée pour spécifier une chaîne exacte qui sera mise en correspondance par le moteur de reconnaissance et non une sous-chaîne. Par exemple, l’expression régulière s ( [ a-z ] +) p retourne des correspondances pour « soupe », « stop », « InStep » et « esophagus ». En revanche, une expression régulière d’écriture équivalente telle que s ( ! est _ ONECHAR) + p correspondrait à « soupe » et à « Stop », mais pas à « InStep » et à « esophagus ».
Les expressions régulières d’écriture manuscrite ne prennent pas en charge les espaces insécables dans les expressions régulières. Autrement dit, vous ne pouvez pas utiliser l’entité « nbsp » dans une expression régulière d’écriture manuscrite.
Les sections suivantes décrivent plus en détail la syntaxe.
Opérateurs valides
Les opérateurs suivants sont valides pour la création d’expressions régulières afin de définir des étendues d’entrée pour les reconnaissance de l’écriture manuscrite.
| Opérateur | Description |
|---|---|
| * |
Opérateur unaire postfix signifiant zéro, une ou plusieurs occurrences de l’opérande. |
| + |
Postfix opérateur unaire signifiant une ou plusieurs occurrences de l’opérande. |
| ? |
Opérateur unaire postfix signifiant zéro ou une occurrence de l’opérande. |
| | |
Signification de l’opérateur d’infixe binaire « or ». |
| () |
Utilisé pour regrouper des éléments. |
L’implémentation Microsoft d’expressions régulières pour les reconnaissance de l’écriture manuscrite permet d’obtenir des applications répétées d’opérateurs unaires suffixés. Par exemple, a * * = (a * ) * = a * , b ?? = (b ?) ? = b ?. Elles autorisent également les répétitions non consécutives, par exemple : a * ? * = ((a * ) ?) * = (a * ) * = a * . cela diffère de .NET Framework expressions régulières, qui n’autorisent que le ? opérateur à répéter.
une autre différence par rapport à .NET Framework expressions régulières est que les expressions régulières d’écriture ne prennent pas en charge une expression vide désignée avec une paire de parenthèses vide ().
Notes
Seuls les caractères de la page de codes 1252 sont pris en charge pour les expressions régulières d’écriture manuscrite.
Utilisation des étendues d’entrée
Vous pouvez également utiliser l’ensemble d’étendues d’entrée habituelles qui sont définies dans le cadre de la fonction SetInputScope dans vos expressions régulières. Par exemple, la valeur du mois (numérique) est _ date _ mois. La syntaxe permettant de spécifier une étendue d’entrée dans le cadre d’une expression régulière consiste à ajouter la valeur énumérée de l’étendue d’entrée à une parenthèse ouvrante et à un point d’exclamation ( !, et à placer une parenthèse fermante,) à la fin. Par exemple :
( ! Est _ mois de la DATE _ )
Si vous combinez l' _ étendue d’entrée par défaut en Oring avec toute autre étendue d’entrée, l’effet est que le module de reconnaissance peut retourner une expression unique prise en charge par le modèle de langage par défaut (par exemple, un mot du dictionnaire système ou une date) avec ou sans ponctuation, ou toute valeur qui remplit le reste de l’expression régulière transmise au module de reconnaissance.
Notes
Les membres suivants de SetInputScope ne sont pas pris en charge dans les expressions régulières : est _ PHRASELIST, IS _ REGULAREXPRESSION, is _ SRGS, is _ XML.
Opérateurs non pris en charge
Les opérateurs d’expression régulière suivants ne sont pas pris en charge lors de la création d’expressions régulières d’écriture manuscrite.
| Opérateur | Description |
|---|---|
| . |
Caractère point. |
| [] |
Crochets. Utilisez des parenthèses pour regrouper des éléments. |
| {} |
Accolades. |
| (?# Commentaire) et un # [ Commentaire] |
Comments : |
| $ |
Caractère de signe dollar. |
| ^ |
Caractère de signe insertion. |
| - |
Caractère tiret. Doit ou ( | ) rassembler tous les ensembles d’éléments. |
Caractères d'échappement
Les caractères ordinaires, autres que ceux figurant dans le tableau suivant, correspondent à eux-mêmes. Autrement dit, un « a » dans une expression régulière spécifie que l’entrée doit correspondre à un « a ».
Une autre différence importante dans l’écriture d’expressions régulières d’écriture manuscrite est que vous pouvez uniquement échapper un ensemble limité de caractères dans une expression régulière. Le tableau suivant présente le jeu de caractères autorisé qui peut être placé dans une séquence d’échappement. Toute autre tentative d’échappement d’un caractère entraînera la levée d’une erreur par le module de reconnaissance.
| Caractère |
|---|
| \* |
| \+ |
| \? |
| \( |
| \) |
| \| |
| \\ |
| \! |
| \. |
| \[ |
| \] |
| \^ |
| \{ |
| \} |
| \$ |
| \# |