How to modify vim’s command, add; Does the symbol complete line feed at the same time?

  question, vim

Take this

Flip [Left to Right to Left] fork Fork \ Bifurcation \ Fork \ Recut

Convert to

flip   ;  Flip [left to right to left] fork;  Forks \ Bifurcations \ Forks \ Repetitions

I use

:%s/^\([ a-zA-Z]\+\)\([\U4E00-\U9FFF ]\+.\+\)\([ a-zA-Z]\+\)\([\U4E00-\U9FFF ]\+.\+\)$/\1;  \2 \3;  \4/g

Now I think

Flip [Left to Right to Left] fork Fork \ Bifurcation \ Fork \ Recut

Become

flip   ;  Turn over [left to right to left]
 fork   ;  Forks \ Bifurcations \ Forks \ Repetitions

How to modify vim’s command, add; Does the symbol complete line feed at the same time?

:s/^\([ a-zA-Z]\+\)\(\([\U4E00-\U9FA5]\+[^ ]*\)\+\)\([ a-zA-Z]\+\)\(\([\U4E00-\U9FA5]\+[^ ]*\)\+\)$/\1;  \2\r\4;  \5/g

Two more brackets
PS: Chinese matching, available online [-x]1Method, test found can also, don’t know the principle.
If there is no English or blank space in the Chinese explanation, it can be written simply.

\(\([\U4E00-\U9FA5]\+[^ ]*\)\+\)
 # can be modified to:
 \([^ a-zA-Z]\+\)\+

  1. https://www.oschina.net/quest …