У меня есть сотни файлов, содержащих массивы чисел. Массивы различаются по размеру. Мне нужно определить, какие массивы имеют только три элемента и извлекают их значения.RegEx: строка возврата, содержащая не более двух конкретных символов
Вот некоторые примеры:
askjdh fdshajkjashf hjd ([123, 2321, 321, 123, 3425.98]);
askjdh ljkjsd hjd ([123, 2321, 321.345]);
askjdh w;klejfjk hjd ([123, 2321, 321.345]); % aksdhj
askjdh ljkjsd hjd ([ 13, 21 , -45]);
два матча из выше, должны быть:
askjdh ljkjsd hjd ([123, 2321, 321.345]);
askjdh ljkjsd hjd ([ 13, 21 , -45]);
И значения:
123, 2321, 321.345
13, 21, -45
Я думал, что это будет работать, но это не:
\[(.*),(.*),(^[^,].*$)\]
Это действительно работает ... но кажется довольно громоздким. Возможно, есть что-то более элегантное?
\[\s*([-+]?\d+\.?\d*)\s*,\s*([-+]?\d+\.?\d*)\s*,\s*([-+]?\d+\.?\d*)\s*\]
Какой язык вы используете? – tlehman
В java, чтобы получить длину массива, «array.length», чтобы получить их значения, это «array [0]; массив [1] и т. д. Это именно то, что вы хотите? – Rika
Язык: Я использую BareGrep для поиска по всем файлам. –