Tomas Novotny
Tomas Novotny

Reputation: 8327

Differences in regex syntax in Python and Java

I have a following working regex in Python and I am trying to convert it to Java, I thought that regex works the same in both languages, but obviously it doesn't.

Python regex: ^\d+;\d+-\d+

My Java attempt: ^\\d+;\\d+-\\d+

Example strings that should be matched:

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

What is the right solution in Java?

Thank you, Tomas

Upvotes: 2

Views: 997

Answers (1)

steinar
steinar

Reputation: 9653

The regex is faulty for the input, don't know what you were doing in Python, but this isn't matching the whole strings in any regex I know.

This should do the trick (escaping characters are omitted):

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

I.e. you need to continue matching the number pairs separated by commas.

Upvotes: 2

Related Questions