Nicely Done Lee.
New Pattern Explanation"(?:(\\d)[ \\-])?(?:\\{\\\\H[^;]+;\\\\S)*(\\d+)/(\\d+)(?:;\\})*"
"
( >>-----> start of a subexpression
?: Matches following pattern but does not save the match, that is, the match is not stored for possible later use.
Pattern to match is a number followed by a space or dash,
(\\d) number - This is subexpression $1 within a subexpression and the space or dash is forgotten due to the ?:
note that only one number is acquired & proceeding numbers are left as is. This acquired number is re-established in the string as $1
[ \\-] space or dash, this is the part that is forgotten
)? Matches the previous character or subexpression zero or one time
( >>-----> start of a subexpression
?: Matches following pattern but does not save the match, that is, the match is not stored for possible later use.
\\{\\\\H match {\H
[^;] H followed by anything except ;
+ match previous expression any amount of times, so the ; stops the match
; literal match of ;
\\\\S match \S
) <-----<< end of a subexpression
* Matches the previous character or subexpression zero or more times
(\\d+) group of numbers, subexpression $2
/ literal match of /
(\\d+) group of numbers, subexpression $3
(?: Matches following pattern but does not save the match, that is, the match is not stored for possible later use.
;\\}) subexpression literal match of ;}
*"
Replacement Pattern"$1{\\H0.7x;\\S$2#$3;}"