Question

J'ai cette définition de travail:

IDENTIFIER   [a-zA-Z][a-zA-Z0-9]*

Je ne veux pas continuer à répéter le [a-zA-Z] et le [0-9], alors j'ai fait deux nouvelles définitions

DIGIT    [0-9]
VALID    [a-zA-Z]

Comment puis-je réécrire la règle IDENTIFIER pour utiliser les définitions DIGIT et VALID?

Je ne sais pas comment faire la "seconde" match, je suis coincé ici:

IDENTIFIER {VALID}[{VALID}{DIGIT}]* // This syntax is incorrect

Merci.

Modifier: l'ensemble du programme de test que j'utilise: http://pastebin.com/f5b64183f .

Était-ce utile?

La solution

On dirait que vous voulez réellement:

IDENTIFIANT {VALID} ({VALID} | {DIGIT}) *

[{VALID} {DIGIT}] se résout en [[A-Za-z] [0-9]], ce qui n'est pas une construction légale.

Autres conseils

Je pense que ça va le faire mais je ne peux pas le tester. avez-vous des exemples de données?

(?: [a-zA-Z]) + (?: [0-9]) +

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top