/ / Unterschiede in der Regex-Syntax in Python und Java - Java, Python, Regex

Unterschiede in der Regex-Syntax in Python und Java - Java, Python, Regex

Ich habe einen folgenden Arbeitsregex in Python und ich versuche, es in Java zu konvertieren, ich dachte, dass Regex das gleiche in beiden Sprachen funktioniert, aber offensichtlich tut es das nicht.

Python Regex: ^d+;d+-d+

Mein Java-Versuch: ^\d+;\d+-\d+

Beispielzeichenfolgen, die übereinstimmen sollten:

3;1-2,2-3
68;12-15,1-16,66-1,1-2

Was ist die richtige Lösung in Java?

Danke, Tomas

Antworten:

2 für die Antwort № 1

Die Regex ist fehlerhaft für die Eingabe, weiß nicht, was Sie in Python gemacht haben, aber das stimmt nicht mit den ganzen Strings in irgendeiner Regex überein, die ich kenne.

Dies sollte den Trick machen (austretende Zeichen werden weggelassen):

^d+;(d+-d+,?)+

I.e. Sie müssen weiterhin die durch Kommas getrennten Zahlenpaare vergleichen.