tr does not match patterns. It works character by character. Both of args to tr end with "jpg". That means translate "j" to "j"; "p" to "p"; and "g" to "g". tr will never know that the string "jpg" appears in the data.
Notice how the character zero appears more than once in the strings. That is a clear sign that you are still thinking in patterns. tr will never assemble 4 consecutive characters like "2005".
Basicly, break your string into 3 pieces, upsihift the middle one, and reassemble the whole string. How depends on what shell you're using. ksh can do everything with just shell builtins thanks to the magic of "typeset -u". With other shells it may be harder.