Итак, у меня есть этот файл, содержащий более 10000 строк сообщений с игрового сервера, например:
11.07.23 08:40:16 [INFO] NC: нарушение при движении: wolfman98 from yasmpРасстояние (от -90,8, 64,0, 167,5) до (-90,7, 64,0, 167,3) (0,0, 0,0, 0,2)
11.07.23 10:57:44 [INFO] NC: нарушение движений: AKxiZeroDark from yasmp(-1228.3, 11.2, 1098.7) до (-1228.3, 11.2, 1098.7) расстояния (0.0, 0.0, 0.0)
Текущий код регулярного выражения, который у меня есть: \d{1,4}\.\d{1}
, что до сих пор соответствуетвсе, что выделено жирным шрифтом:
11.07.23 08:40:16 [INFO] NC: нарушение движений: wolfman98 от yasmp (- 90.8 , 64,0 , 167,5 ) до (- 90,7 , 64,0 , 167,3 ) расстояние ( 0,0 ), 0.0 , 0.2 )
Мне не удалось найти способ получить только ту часть, которая гласит:
(-1228.3, 11.2, 1098.7) - (-1228.3, 11.2, 1098.7)
перед словом "расстояние" и безвременная метка в начале и, в конечном итоге, ее замена на следующую:
11.07.23 08:40:16 [INFO] NC: нарушение перемещения: wolfman98 из yasmp (- #,#, #) до (- #, #, #) расстояние (0,0, 0,0, 0,2)
11.07.23 10:57:44 [INFO] NC: перемещениенарушение: AKxiZeroDark от yasmp (- #, #, #) до (- #, #, #) расстояние (0,0, 0,0, 0,0)
И немного дополнительной информации, числа могут быть либо отрицательными, либо нет, в диапазоне от 1,0 до 1234,0 цифр, поэтому мне нужна помощь в сопоставлении перед словом «расстояние».
РЕДАКТИРОВАТЬ: Или даже, было бы хорошо, если бы все это не показывалось:
11.07.23 08:40:16 [INFO] NC: нарушение движения: wolfman98 с расстояния yasmp (0.0, 0.0, 0.2)
11.07.23 10:57:44 [INFO] NC: нарушение движения: AKxiZeroDark от расстояния yasmp (0,0, 0,0, 0,0)