Я пытаюсь разобрать двойную строку. У меня есть код:Как вытащить двойную строку из строки с совпадением
Pattern p = Pattern.compile("-?\\d+(\\.\\d+)?");
Matcher m = p.matcher("reciproc(2.00000000000)");
System.out.println(Double.parseDouble(m.group()));
Этот код вызывает java.lang.IllegalStateException. Я хочу, чтобы выход был 2.00000000000. Я получил регулярное выражение от Java: Regex for Parsing Positive and Negative Doubles, где он, похоже, работал на них. Я также пробовал несколько других регулярных выражений, и все они бросали ту же ошибку. Я что-то упустил?
Итак, каков ваш результат? – Kasramvd
it throws a java.lang.IllegalStateException – lights
Проверьте строку, переданную 'Pattern.matcher()'. Считаете ли вы, что это будет соответствовать регулярному выражению, которое вы дали? – kaykay