Regex Java: symbole pour un nombre quelconque de caractères?

Je me demande s’il existe un symbole pour un nombre quelconque (y compris zéro) de caractères

.* 

. est n’importe quel caractère, * signifie répété zéro ou plusieurs fois.

Vous pouvez utiliser cette expression régulière (tout espace ou tout espace vide) autant que possible jusqu’à 0 inclus.

 [\s\S]* 

Cette expression correspondra le moins possible, mais autant que nécessaire pour le rest de l’expression.

 [\s\S]*? 

Par exemple, dans cette regex [\s\S]*?B correspondra à aB dans aBaaaaB . Mais dans cette regex [\s\S]*B correspondra à aBaaaaB dans aBaaaaB .

Tu veux dire

 .* 

. n’importe quel caractère, sauf le caractère de nouvelle ligne, avec le mode dotall, il inclut également les caractères de nouvelle ligne

* tout montant de l’expression précédente, y compris 0 fois

Je voudrais utiliser .* . . correspond à n’importe quel caractère, * signifie 0 ou plusieurs occurrences. Vous pourriez avoir besoin d’un commutateur DOTALL sur l’expression rationnelle pour capturer de nouvelles lignes avec . .

La réponse à cette question devrait être dans tout tutoriel ou documentation Java Regex que vous recherchez. Oui, il y en a un, c’est l’astérisque. *

 a* // looks for 0 or more instances of "a" 

Je viens de faire une recherche sur Google “jge regex répète zéro ou plusieurs fois” et le premier coup répond à votre question, tout comme probablement 95% des autres résultats.