2017-11-20 13 views
2

Ich versuche, eine Regex zu schreiben (um eine Eigenschaft auf AC# .NET Core-Modell zu validieren, die Javascript-Ausdruck generiert), um alle Zahlen mit mindestens zwei verschiedenen Ziffern und übereinstimmen eine Mindestlänge von 6 Ziffern.Regex, um Zahl mit verschiedenen Ziffern und Mindestlänge zu entsprechen

Zum Beispiel:

222222 - nicht gültig

122222 - gültig

1111125 - gültig

Ich habe versucht, den folgenden Ausdruck: (\d)+((?!\1)(\d)), die die Sequenz übereinstimmt, wenn verschiedene Stellen haben aber wie kann ich die Größe des gesamten Musters auf {6,} beschränken?

Vielen Dank

+0

Hatten Sie Zeit, um meine Antwort zu überprüfen? Bitte überprüfen Sie, ob es so funktioniert, wie Sie epxect. –

Antwort

0

Sie

verwenden
^(?=\d{6})(\d)\1*(?!\1)\d+$ 

Siehe regex demo

Einzelheiten

  • ^ - Beginn der Zeichenfolge
  • (?=\d{6}) - mindestens 6 Ziffern
  • (\d) - null oder mehr Vorkommen des in Gruppe 1
  • (?!\1) erfasste Wert - - die nächste Ziffer kann nicht dasselbe wie in der Gruppe sein, ist eine beliebige Ziffer in Gruppe 1
  • \1* gefangen 1
  • \d+ - 1 + Ziffern
  • $ - Ende der Zeichenfolge.
Verwandte Themen