Трудно сказать, не зная, как вы передаете эти строки - это строки в файле?Массив строк на языке программирования?
Если вы ищете файл, используя grep
или аналогичный инструмент, он выдаст вам все строки, которые соответствуют где угодно , даже если толькочасть строки совпадает.
Обычно вы решаете эту проблему, используя anchors , чтобы указать, что регулярное выражение должно начинаться с первого символа строки и заканчиваться последним (например, ^[0-9]+.[0-9]+.[0-9]$
).^
соответствует началу строки, а $
соответствует концу.
В вашем случае у вас есть косые черты в конце всех строк, поэтому самое простое решение - сопоставить этофинальная косая черта, с ^[0-9]+.[0-9]+.[0-9]/
.
Вы также можете использовать заголовок или группы, чтобы сопоставить косую черту, не возвращая ее - но это зависит немного больше от того, на каком инструменте вы используете это регулярное выражение и как выповторно обработать его.
Если ваши строки разделены пробелами (кроме символов новой строки), замена ^
на (^|\s)
(либо начало строки, либо какой-либо символ пробела) может работать -- но это добавит пробел к некоторым вашим результатам.
Вам также может понадобиться настроить инструмент регулярных выражений так, чтобы он совпадал несколько раз в строке (например, флаг -o
в grep
).Опять же, трудно дать полезный совет по этому поводу, не зная, какой инструмент регулярных выражений вы используете, или как вы обрабатываете результаты.