I don't know if this is robust enough for you. the gist is identify some text with a regular _expression_, and replace that text with something else. I use re-builder to help create the regexps.
#+BEGIN_SRC emacs-lisp
(let ((s " <div class=\"csl-entry\">Broder, John M., and Ian Urbina. “All Eyes Turn to Virginia Senate Race.” <i>The New York Times</i>, November 9, 2006, sec. /. <a href="" href="http://hostname/url">http://hostname/url.</a></div>"))
(setq s (replace-regexp-in-string "\\(\.\\)\"" "" s nil nil 1))
(setq s (replace-regexp-in-string "\\(\.\\)</a>" "" s nil nil 1)))
#+END_SRC
#+RESULTS:
: <div class"csl-entr">Broder, John M., and Ian Urbina. “All Eyes Turn to Virginia Senate Race.” <i>The New York Times</i>, November 9, 2006, sec. /. <a href"http:hostname/url">
http://hostname/url</a></div>