If some of your dashes at the start of the lines disappear, it will be difficult to pick out the string to prepend to each line by its field number as it may not always be field 4, as in
$ cat file /example-origin-live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9 /example.origin-live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9 /example.origin.live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9
Instead, the following picks out the second --delimited word after the : on each line:
$ sed 's/^\([^:]*:[^-]*-\([^-]*\)\)/\2\1/' file 320/example-origin-live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9 320/example.origin-live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9 320/example.origin.live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9
Or, arguably more readable with awk:
$ awk -F ':' '{ split($2,a,"-"); print a[2] $0 }' file 320/example-origin-live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9 320/example.origin-live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9 320/example.origin.live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9
That assumes that the line is basically two :-delimited fields, then splits the second of these up on - and uses the second of the resulting fields for the output.
If the end bit of each line has static formatting, then you could obviously count fields from the end instead of from the start and use awk like so:
$ awk -F '-' '{ print $(NF - 5) $0 }' file 320/example-origin-live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9 320/example.origin-live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9 320/example.origin.live/ngrp:tennis-320-fd1d9b92-69e2-446c-a3e6-45b33a55efc9