Я имел в своем коде, среди других шаблонов, этот, чтобы идентифицировать целые числа
Pattern patternNumber = Pattern.compile("[0-9]+");
Чтобы прочитать ввод, я использовал *:
String input = "x: 1.6 ..10;";
String[] meta = a.split("(?:(?<=^|\\s)(?=\\S)|(?<=\\S|^)(?=\\s))\\b(?:(?<=\\S)(?=\\s|$)|(?<=\\s)(?=\\S|$))|\\b");
* Предоставленото, что я нашел здесь , немного изменено, чтобы соответствовать.У меня нет большого опыта работы с Regex, но эта строка волшебным образом сработала для меня.
Затем я перешел к добавлению чисел с плавающей запятой:
Pattern patternNumber = Pattern.compile("\\d*\\.\\d+|\\d+");
Но теперь я могупохоже, это не работает.Для части с плавающей точкой она разбивает число, давая мне:
1
.
6
И что я хочу:
1.6
Я обнаружил, что это работает, если я использую только:
String input = "1.6";
String[] meta = a.split("\\D\\.\\D");
Есть идеи, как заставить эту часть работать с остальной частью выражения в методе split?