У меня есть некоторые данные (ниже), которые я пытаюсь выровнять.
| 24 | 11 | 506 | -1 | -829.99||
| 24 | 11 | 1910 | 506 | 1 | 829.99|3|
| 12 | 11 | 1933 | 531 | 2 | 7.78 |N|
Кажется, что когда значение от 3-го до последнего для каждой строки отрицательное, в строке отсутствует символ "|" разделитель. Я пытаюсь использовать регулярное выражение для добавления вертикальной черты посередине записей, чтобы выровнять данные следующим образом:
| 24 | 11 | | 506 | -1 | -829.99||
| 24 | 11 | 1910 | 506 | 1 | 829.99 | 3|
| 12 | 11 | 1933 | 531 | 2 | 7.78 | N|
Не обращая внимания на пробел, я включил его, чтобы сделать данные более читабельными для цель этого вопроса.
Я знаю, что приведенное ниже выражение найдет правильную текстовую группу и добавит дополнительный «|» после него, но можно ли это изменить, чтобы поставить "|" перед группой?
re.sub(r'(\|*\|*\|\|)', r'\1',DATA)
Просто начинаю с регулярным выражением, поэтому любая помощь приветствуется!
PS - я использую python, чтобы сделать фактические замены / дополнения регулярных выражений для этого сбора данных задача.