Index: BibTeX.js
===================================================================
--- BibTeX.js	(revision 3605)
+++ BibTeX.js	(working copy)
@@ -1786,10 +1786,14 @@
 	value = value + ""; // convert integers to strings
 	Zotero.write(",\n\t"+field+" = ");
 	if(!isMacro) Zotero.write("{");
-	// I hope these are all the escape characters!
-	value = value.replace(/[|\<\>\~\^\\]/g, mapEscape).replace(/([\#\$\%\&\_])/g, "\\$1");
-	// Case of words with uppercase characters in non-initial positions is preserved with braces.
-	if(!isMacro) value = value.replace(/([^\s]+[A-Z][^\s]*)/g, "{$1}");
+	// url field is preserved, for use with \href and \url
+	// Other fields (DOI?) may need similar treatment
+	if(field != "url") {
+		// I hope these are all the escape characters!
+		value = value.replace(/[|\<\>\~\^\\]/g, mapEscape).replace(/([\#\$\%\&\_])/g, "\\$1");
+		// Case of words with uppercase characters in non-initial positions is preserved with braces.
+		if(!isMacro) value = value.replace(/([^\s]+[A-Z][^\s]*)/g, "{$1}");
+	}
 	if (!Zotero.getOption("UTF8")) {
 		value = value.replace(/[\u0080-\uFFFF]/g, mapAccent);
 	}
