web-dev-qa-db-fra.com

Regex pour correspondre à plus de 2 espaces blancs mais pas à une nouvelle ligne

Je veux remplacer plus de 2 espaces blancs dans une chaîne mais pas de nouvelles lignes, j'ai cette expression régulière: \s{2,} mais il correspond également à de nouvelles lignes.

Comment puis-je faire correspondre 2 espaces blancs ou plus uniquement et pas de nouvelles lignes?

J'utilise c #

74
Bruno

Mettez les caractères d'espace blanc que vous souhaitez faire correspondre dans une classe de caractères. Par exemple:

[ \t]{2,}

correspond à 2 espaces ou tabulations ou plus.

Vous pourriez également faire:

[^\S\r\n]{2,}

qui correspond à n'importe quel caractère d'espace blanc sauf \r et \n au moins deux fois (notez que la majuscule S dans \S est l'abréviation de [^\s]).

137
Bart Kiers