2016-06-07 9 views

Antwort

2

Sie könnten /\s*,\s*/g und dann .trim() die Zeichenfolge verwenden.

+0

Ich habe es auf http://www.regexpal.com versucht, aber nicht alle Leerzeichen – user2406718

+0

@ user2406718 Sorry, behoben. – gcampbell

+0

hat es funktioniert. vielen Dank – user2406718

1

Verwenden der regex ^\s+|(,)\s+|\s+(?=,)|\s$ und ersetzt Einstimmungen mit der ersten Erfassungsgruppe $1:

var string = " one two, three , four ,five six,seven "; 
 
console.log(string.replace(/^\s+|(,)\s+|\s+(?=,)|\s$/g, '$1'));

Die Erfassungsgruppe ist entweder leer oder enthält ein Komma, wenn der regex Motor einen Raum nach einem begegnet Komma (,)\s+ (für die wir besser Lookbehind verwenden würden, aber JavaScript unterstützt es nicht).

Verwandte Themen