Utilisation d'anticipations pour contrôler la longueur des chaînes dans les expressions régulières
Les quantificateurs d'expressions régulières dans les ancres conduisent souvent à des erreurs lorsque l'on tente de limiter la longueur des chaînes. La solution ? Anticipation ! Voici comment appliquer efficacement les restrictions sur la longueur des caractères :
<code>^(?=.{1,15}$)[a-zA-Z0-9]*[^$%^&*;:,?()""']*$</code>
Pourquoi les analyses anticipées sont essentielles
Les quantificateurs sont incompatibles avec les ancres. Les anticipations fournissent une solution de contournement. L'anticipation (?=.{1,15}$)
, placée immédiatement après l'ancre de début de chaîne (^
), utilise un quantificateur ({1,15}
) pour vérifier 1 à 15 caractères, suivi de l'ancre de fin de chaîne ($
). Cela garantit que la chaîne entière respecte la contrainte de longueur.
Gestion des chaînes multilignes
Pour les chaînes avec des caractères de nouvelle ligne, utilisez la construction [sS]
dans le lookahead :
<code>^(?=[\s\S]{1,15}$)[a-zA-Z0-9]*[^$%^&*;:,?()""']*$</code>
Cette expression modifiée gère avec précision les chaînes contenant des sauts de ligne. En utilisant des analyses anticipées, vous pouvez appliquer de manière fiable des restrictions de longueur dans vos expressions régulières, garantissant ainsi que l'intégralité de la chaîne d'entrée est conforme à vos exigences spécifiées.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!