#SmileBASIC, 27 25 bytes
SmileBASIC, 27 25 bytes
DEF D S
S[0]=@1[S>"2"]END
Creates a function named D
that is called like:
STRING$="abcde"
D STRING$
'STRING$ is now "1bcde"
The first character is replaced with either @
or 1