La plupart des parsers d'expression rationnelle permettent de spécifier une liste de caractères reconnaissables entre crochets [ et ] et celle-ci peut-être inversée avec l'opérateur ^ (différent du marqueur de début de ligne).
Donc, si tu veux matcher au moins une fois un non-espace, tu fais.
.*[^ ]+.*.
Si tu as un chiffre en quatrième position à reconnaître et que le reste des caractères ne t'importe que peu, tu peux faire
...[0-9].*
Maintenant, si tu dois reconnaître exactement 10 caractères dont la nature change, c'est plus compliqué parce qu'il te faut un registre qui sort du contexte de l'automate. Ou alors il faut faire un automate à 21 états (si on veut reconnaître exactement 10 caractères) et c'est chiant à simplifier, évidemment.
# Avec l'opérateur de négation ?
Posté par Obsidian . En réponse au message [expression régulière] détecter un caractère non espace dans une séquence.. Évalué à 2.
Donc, si tu veux matcher au moins une fois un non-espace, tu fais.
.*[^ ]+.*.
Si tu as un chiffre en quatrième position à reconnaître et que le reste des caractères ne t'importe que peu, tu peux faire
...[0-9].*
Maintenant, si tu dois reconnaître exactement 10 caractères dont la nature change, c'est plus compliqué parce qu'il te faut un registre qui sort du contexte de l'automate. Ou alors il faut faire un automate à 21 états (si on veut reconnaître exactement 10 caractères) et c'est chiant à simplifier, évidemment.