Différence entre “\\d+” et “\\d++” en java regex
En java, quelle est la différence entre "\\d+"
et "\\d++"
?
Je sais ++ est un possessif quantificateur, mais quelle est la différence dans la correspondance de la chaîne numérique?
Quelle chaîne peut correspondre à "\\d+"
, mais ne peut pas avec "\\d++"
?
Possessif quantificateur semble significatif avec quantificateur ".*"
seulement. Est-il vrai?
OriginalL'auteur user2313900 | 2013-04-24
Vous devez vous connecter pour publier un commentaire.
Possessif quantificateurs ne sera pas de retour, même si de l'aide est requise pour l'ensemble du match.
Ainsi, par exemple, l'expression régulière
\d++0
ne peut jamais correspondre à n'importe quelle entrée, parce que\d++
correspond à tous les caractères, y compris les0
nécessaires pour correspondre à la dernière symbole de la regex.OriginalL'auteur erickson
\d+ Signifie:
\d
signifie un chiffre (de Caractères dans la plage 0 à 9), et+
signifie 1 ou plusieurs fois. Donc,\d+
est de 1 ou plusieurs chiffres.\d++ Signifie de Les quantificateurs
\d++
.La citation dans votre réponse est incorrecte, et il ne peut pas être trouvé sur la page liée. Les quantificateurs possessifs ne sont pas toujours "manger l'ensemble de la chaîne d'entrée".
OriginalL'auteur Sumit Singh