code: func Replace(filename string, r []Replacer) error {
  	e, err := NewEdit(filename)
  	if err != nil {
  		return err
  	}
  
  	err = e.genReplace(r, -1)
  	err2 := e.Close()
  	if err != nil {
  		return err
  	}
  	return err2
  }
docs: /*// Insert writes len(b) bytes at the start of the named file. It returns an
  // error, if any. The file is backed up.
  func Insert(filename string, b []byte) error {
  	e, err := NewEdit(filename)
  	if err != nil {
  		return err
  	}
  
  	err = e.Insert(b)
  	err2 := e.Close()
  	if err != nil {
  		return err
  	}
  	return err2
  }
  
  // InsertString is like Insert, but writes the contents of string s rather than
  // an array of bytes.
  func InsertString(filename, s string) error {
  	return Insert(filename, []byte(s))
  }*/
  // Replace replaces all regular expressions mathed in r for the named file.