Regex pour correspondre à toutes les instances non pas à l'intérieur des guillemets

De cette q/a, j'en ai déduit que toutes les instances d'une regex pas à l'intérieur des guillemets, c'est impossible. Qui est, il peut ne pas correspondre échappé guillemets (ex: "this whole \"match\" should be taken"). Si il y a un moyen de le faire que je ne connais pas, qui permettrait de résoudre mon problème.

Si pas, cependant, je voudrais savoir si il existe une alternative efficace qui pourrait être utilisé en JavaScript. J'ai réfléchi un peu, mais ne pouvez pas venir avec quelque des solutions élégantes qui serait à l'œuvre dans la plupart, si pas tous les cas.

Plus précisément, j'ai juste besoin de l'alternative de travailler avec .split() et .replace() les méthodes, mais si elle pouvait être plus généralisée, qui serait le meilleur.

Par Exemple:

Une entrée de chaîne de:
+bar+baz"not+or\"+or+\"this+"foo+bar+

remplacement de + avec #, pas à l'intérieur des guillemets, serait de retour:
#bar#baz"not+or\"+or+\"this+"foo#bar#

InformationsquelleAutor Azmisov | 2011-06-24