Ответов: 1 Просмотров: 3931
|
Есть три варианта строки:
CODE ( htmlphp):
скопировать код в буфер обмена
String newStr = "2:4 (1:0, 2:0, 2:0) pso"; String newStr1 = "2:3 (0:1, 0:1) aet"; String newStr2 = "2:2 (0:1) ";
Можно ли составить универсальное регулярное выражение, которое смогло разобрать любую из трех строк выше?
Попробовал для первой строки, получилось для цифр, но не получилось для букв.
CODE ( htmlphp):
скопировать код в буфер обмена
String dStr1 = "(\\d{1,2}):(\\d{1,2}) (\\(\\d{1,2}):(\\d{1,2}), (\\d{1,2}):(\\d{1,2}), (\\d{1,2}):(\\d{1,2})"; Pattern pt = Pattern.compile(dStr1); Matcher mt = pt.matcher(newStr); if(mt.find()){ System.out .println ("String-->" + newStr + " 1-->" +mt .group (1) + " 2-->"+mt .group (2)+ " 3-->" +mt .group (3) + " 4-->"+mt .group (4) + " 5-->" +mt .group (5) + " 6-->"+mt .group (6)+ " 7-->" +mt .group (7) + " 8-->"+mt .group (8 )); }
но если строка другая то mt.find() - ложь и разбор не происходит.
Может подскажите, правильное выражение и его применение.
Спасибо. |