Sólo una cadena. Agregue \ 'a cada vez que haya una comilla simple.¿Cómo agrego barras en una cadena en Javascript?
Respuesta
replace
obras para la primera cita, por lo que necesita una pequeña expresión regular:
str = str.replace(/'/g, "\\'");
Esto es incorrecto porque también necesita escabullirse. –
@AlexeyLebedev - El segundo argumento no es un patrón de expresiones regulares: solo necesita una barra invertida en la cadena. – Kobi
veamos: str = "\\ '"; str = str.replace (/ '/ g, "\\'"); –
var myNewString = myOldString.replace(/'/g, "\\'");
var str = "This is a single quote: ' and so is this: '";
console.log(str);
var replaced = str.replace(/'/g, "\\'");
console.log(replaced);
le da:
This is a single quote: ' and so is this: '
This is a single quote: \' and so is this: \'
Para estar seguros, es necesario no solo reemplaza las comillas simples, pero también las ya escapadas:
"first ' and \' second".replace(/'|\\'/g, "\\'")
Una respuesta que no solicitó puede ser útil, si está haciendo el reemplazo como preparación para enviar la cadena a alerta() - o cualquier otra cosa donde un carácter de comilla simple pueda hacer que se tropiece .
str.replace("'",'\x27')
que sustituirá todas las comillas simples con el código hexadecimal de comilla simple.
Esas cadenas son idénticas. A menos que quisieras decir '\\ x27'. –
siguiente función JavaScript maneja',", \ b, \ t, \ n, \ r equivalente f o \ de addslashes función php().
function addslashes(string) {
return string.replace(/\\/g, '\\\\').
replace(/\u0008/g, '\\b').
replace(/\t/g, '\\t').
replace(/\n/g, '\\n').
replace(/\f/g, '\\f').
replace(/\r/g, '\\r').
replace(/'/g, '\\\'').
replace(/"/g, '\\"');
}
Esta función hará lo contrario, espero que esté bien publicar aquí ... yikes .. String.prototype.stripSlashes = function() { return this.replace (/\\(.)/ mg, "$ 1"); } –
Una cadena se puede escapar integral y compacta usando JSON.stringify. es parte de JavaScript como de ECMAScript 5 y apoyado por las principales versiones más recientes del navegador.
str = JSON.stringify(String(str));
str = str.substring(1, str.length-1);
con este enfoque, también caracteres especiales como el byte nulo, los caracteres Unicode y saltos de línea y \r
\n
se escapan correctamente en una declaración relativamente compacta.
Compatible con todos los navegadores con más de 0.1% de uso de uso global, aunque la versión 8 de IE debe estar en modo estándar. – thelem
if (!String.prototype.hasOwnProperty('addSlashes')) {
String.prototype.addSlashes = function() {
return this.replace(/&/g, '&') /* This MUST be the 1st replacement. */
.replace(/'/g, ''') /* The 4 other predefined entities, required. */
.replace(/"/g, '"')
.replace(/\\/g, '\\\\')
.replace(/</g, '<')
.replace(/>/g, '>').replace(/\u0000/g, '\\0');
}
}
Uso: alert (str.addSlashes());
- 1. ¿Escape una cadena (agregue barras) en VB.net?
- 2. cómo agrego un int a una cadena
- 3. ¿Cómo agrego estilo al contenido en JavaScript?
- 4. barras invertidas Extracción de cadenas en Javascript
- 5. JavaScript y barras diagonales en cadenas
- 6. cómo dividir una cadena en javascript
- 7. Cómo analizar una cadena en JavaScript?
- 8. cómo eliminar "," de una cadena en javascript
- 9. ¿Cómo crear una cadena JSON en JavaScript?
- 10. Eliminar barras diagonales inversas de una cadena en Python
- 11. ¿Cómo convierto una cadena de consulta PHP en una URL basada en barras?
- 12. Javascript y barras invertidas reemplazar
- 13. ¿Cómo agrego JavaScript a una vista ASP.NET MVC?
- 14. ¿Cómo agrego una biblioteca en Eclipse?
- 15. ¿Cómo agrego APK en una compilación AOSP?
- 16. ¿Cómo agrego cuadros de texto dinámicamente en Javascript?
- 17. ¿Cómo agrego mil separadores a un número en JavaScript?
- 18. Convierta una fecha en cadena en Javascript
- 19. Javascript - Reemplazar el carácter de escape en una cadena literal
- 20. ¿Cómo agrego nuevo video completamente desde JavaScript?
- 21. barras de desplazamiento en JTextArea
- 22. Cómo convertir cualquier cosa en una cadena segura en JavaScript
- 23. ¿Cómo reemplazar un apóstrofo en una cadena en Javascript?
- 24. ¿Cómo convertir una cadena en un mapa en javascript?
- 25. Cómo obtener un apóstrofo en una cadena en javascript
- 26. ¿Cómo mezclo los caracteres en una cadena en JavaScript?
- 27. En Bash, ¿cómo agrego una cadena después de cada línea en un archivo?
- 28. ¿Cómo convierto una cadena JSON a una función en javascript?
- 29. ¿Separar cadena una vez en javascript?
- 30. Agregar caracteres a una cadena en Javascript
vale que esto no puede ser para la prevención de inyección SQL, ya que un atacante puede fácilmente pasar por alto esto. El código de explotación no tiene que ejecutar su javascript, simplemente enviará la solicitud. La entrada de escape y desinfección siempre debe hacerse desde el lado del servidor. – rook
O bien, es posible que desee guardarse un poco de PHP y hacerlo en el lado del cliente como lo hace la pregunta específicamente. – tim
Lo que Rook dice es que * no * debes ahorrarte algo de PHP y hacerlo en el lado del cliente, porque un atacante puede eludir fácilmente cualquier código del lado del cliente. –