2011-08-10 11 views
7

Tengo la cadena: \ rnosapmdwq \ Salesforce \ R3Q \ OutputFiles \ ArchivoReemplazar todas las barras invertidas en una cadena con un tubo

Estoy recibiendo una secuencia de escape no reconocido cuando intento enviar a un Web .NET Servicio.

Estoy tratando de reemplazar todo el "\" con "|" para enviarlo al servidor.

Sé que puedo usar el método de reemplazar pero eso solo reemplaza el primer elemento. Creo que necesito usar una expresión regular para resolverlo.

Esto es lo que tengo hasta ahora:

Path = Path.replace("\\/g", "|"); 

Esto está mal sin embargo.

+0

están invertidas en la cadena original se escaparon, es decir, ' "\\ \\ rnosapmdwq ventas ..."'? – chesles

Respuesta

28

No es necesario hacer una expresión regular una cadena, y merece la pena tener esa primera / allí

Path = Path.replace(/\\/g, "|") 
4

La sintaxis correcta sería: Path = Path.replace(/\\/g, "|");

Ejemplo de trabajo en: http://jsfiddle.net/eDKej/.

Ejemplo (código adicional para fines de demostración solamente):

var Path = $("#path").text(); 
Path = Path.replace(/\\/g, "|"); 
$("#new-path").append(Path); 
+0

Sí, de hecho lo noté después de publicar mi solución. Estoy tan acostumbrado a tener que reemplazar barras diagonales al enviar rutas a una base de datos. – RobB

Cuestiones relacionadas