Ganz einfach wäre: ^\w+\|\w+(,\w+\|\w+)*$
sicher, dass die Zeichenfolge
Der erste Teil, ^\w+\|\w+
schaut zu machen beginnt mit mindestens 1 abgeschlossen name|value
Paar.
Dann sagt der zweite Teil, (,\w+\|\w+)*
, dass das gleiche Muster unendlich wiederholen kann, solange zwischen dem ersten Paar und allen nachfolgenden Paaren ein Komma ist. (Obwohl , quantifizieren die Sternchen, dass der zweite Abschnitt des Musters nicht auftreten kann.)
Schließlich wird die $
sagt, dass die Zeichenfolge mit diesem Musterabgleich enden. (Dh, kann dieses Muster nicht nur ein Teil der Zeichenfolge übereinstimmen Es muss die gesamte Zeichenfolge übereinstimmen, da der ^
und $
..)
dieses Muster formatieren für Javascript, einfach werfen ein Schrägstriche an beiden Enden, so: /^\w+\|\w+(,\w+\|\w+)*$/
Das Muster sollte keine Flags benötigen.
Es ist erwähnenswert, wenn Sie komplexere Namen/Werte übereinstimmen müssen, die außerhalb des Zeichenbereich von \w
sind, dann sollten Sie alle \w
s mit [Some Character Set(s)]
ersetzen.