Expression régulière correspondant à un mot avec les numéros de il

Je suis en utilisant Text::Ngrams afin de déterminer les combinaisons de mots dans une chaîne de caractères. Cependant, j'ai besoin de garder les mots ont des chiffres en eux. J'ai déterminé que $o->{tokenrex} est ce que je dois modifier, mais je ne peux pas déterminer la bonne regex.

L'original est qr/([a-zA-Z]+|(\d+(\.\d+)?|\d*\.\d+)([eE][-+]?\d+)?)/; mais je pense que j'ai besoin de quelque chose de plus le long des lignes de cette:

 qr/([a-zA-Z]+|(?<=\w)(\d+(\.\d+)?|\d*\.\d+)([eE][-+]?\d+)?(?=\w)|(\d+(\.\d+)?|\d*\.\d+)([eE][-+]?\d+)?)/;

Qui devrait, si je suis en train de lire regex droit, correspond à un nombre quelconque de caractères alpha, ou un "nombre" qui a un caractère de mot avant et après, ou un "numéro". Sauf que c'est de la séparation de mon "mot" pour séparer les jetons. L'exemple de mot je travaille est "A1X".

Toute aide serait super.

apprendre à utiliser et l'amour de la x regex modificateur qui vous permet d'utiliser des espaces blancs (espaces, tabulations, retours à la ligne) dans l'expression rationnelle pour la mise en forme
Strom j'ai pleinement l'intention; je préfère avoir de travail avant que j'essaie d'expliquer ce qu'il fait 🙂
C'est juste le point. Il est plus facile d'obtenir ce travail si vous pouvez voir ce que ça donne!

OriginalL'auteur Glen Solsberry | 2011-03-10