Description
You just have to validate your string with a look ahead, then match the substrings you want removed while capturing the minus sign if it were there.
(?=^[0-9][+-][0-9]+\.[0-9]{2}$)(?:[0-9]+(?:(-)|\+))0+(?!\.)
Replace with: $1

This regular expression will do the following:
- validate your string is in the format integer plus or minus real with two decimal points
- replaces everything else that is not desirable, like the leading integer, and zeros before the decimal point, not including the zero directly before the decimal point.
Example
Live Demo
https://regex101.com/r/mP4gH1/2
Sample text
1-000000.02
1-000000.00
1+000025.48
1-000025.47
1-000000.00
1+000000.00
1+000025.46
After Replacement
-0.02
-0.00
25.48
-25.47
-0.00
0.00
25.46
Explanation
NODE EXPLANATION
----------------------------------------------------------------------
(?= look ahead to see if there is:
----------------------------------------------------------------------
^ the beginning of a "line"
----------------------------------------------------------------------
[0-9] any character of: '0' to '9'
----------------------------------------------------------------------
[+-] any character of: '+', '-'
----------------------------------------------------------------------
[0-9]+ any character of: '0' to '9' (1 or more
times (matching the most amount
possible))
----------------------------------------------------------------------
\. '.'
----------------------------------------------------------------------
[0-9]{2} any character of: '0' to '9' (2 times)
----------------------------------------------------------------------
$ before an optional \n, and the end of a
"line"
----------------------------------------------------------------------
) end of look-ahead
----------------------------------------------------------------------
(?: group, but do not capture:
----------------------------------------------------------------------
[0-9]+ any character of: '0' to '9' (1 or more
times (matching the most amount
possible))
----------------------------------------------------------------------
(?: group, but do not capture:
----------------------------------------------------------------------
( group and capture to \1:
----------------------------------------------------------------------
- '-' character
----------------------------------------------------------------------
) end of \1
----------------------------------------------------------------------
| OR
----------------------------------------------------------------------
\+ '+' character
----------------------------------------------------------------------
) end of grouping
----------------------------------------------------------------------
) end of grouping
----------------------------------------------------------------------
0+ '0' (1 or more times (matching the most
amount possible))
----------------------------------------------------------------------
(?! look ahead to see if there is not:
----------------------------------------------------------------------
\. '.'
----------------------------------------------------------------------
) end of look-ahead
----------------------------------------------------------------------