My favorite SED tutorial: http://www.grymoire.com/Unix/Sed.html
Note the general form of the "s" (substitute) command:
sed s_old_new_X filename
_ = the delimiter (whatever character follows the "s" is automatically the delimiter
old = the text to replace (in your example "^" means "the empty string at the beginning of the line")
new = the new text
X = optional commands--eg: "g" for replace all instances, "p" to print, "2" to only replace the 2nd occurrence.
The single quotes are not always required but are good practice. They say to the shell: "everything in here is for SED and not for you."
Doesn't your version produce an error message? If not, does anyone know why?