2017-05-09 7 views
-1

Ich versuche, einen regulären Ausdruck für den Satz von Zeichenfolgen wie folgt zu erstellen. Ich habe einige der Online-Tools ausprobiert, aber nicht in der Lage mit Werkzeugen kommenRegulärer Ausdruck, um eine Reihe von Zeichenfolgen zu vergleichen

History_D , 
History_D-1, 
History_D+1 , 
History_D+2 , 

Was habe ich versucht:

^History_D(\[-\+\][12])?$ 

und

/^History_D([+-]?[12])?$/ 

Aber keiner von ihnen scheint zu funktionieren . Irgendwelche Hinweise werden geschätzt. Hinweis: Ich benötige eine Regex, die möglicherweise mit einem der obigen Zeichenfolgen übereinstimmen kann.

+0

Ihr erstes Beispiel ganz gut funktioniert. Denken Sie daran, das mehrzeilige Flag zu setzen, wenn Sie volle Zeilen (wie durch die '^' und '$') angezeigt werden wollen. Arbeitsbeispiel: https://regex101.com/r/4EfHTf/1 –

+0

Sie sollten nur "Online-Tools" als Referenz verwenden, aber testen Sie Ihre Muster in der realen Zielumgebung. Die Frage ist off-topic, da Ihre Regexes funktionieren. Oder es ist unklar, da es nicht klar ist, ob die Kommas mit Leerzeichen in den Zeichenfolgen vorhanden sind, die Sie testen, oder dies ist nur Formatierungsproblem hier. –

Antwort

0

/^History_D(\-|\+)*\d*\s*\,*$/gm scheint mit Global und Multiline-Flags zu funktionieren.

Sie können es in Aktion sehen hier: http://regexr.com/3ftv2

Verwandte Themen