javascript - regular - Regex para reemplazar una comilla simple con dos comillas simples
replace comillas asp (8)
Me estoy topando con un problema que creo que se debe a la necesidad de duplicar algunas comillas simples dentro de una cadena. Sin embargo, el string.replace de JS usa RegEx, y nunca he creado un RegEx a mano.
¿Puede alguien ayudarme a construir un RegEx para encontrar una sola cita y reemplazarla con dos simples?
String.replace de JS usa RegEx
No necesariamente:
var str = "O''Reilly''s books";
alert(str.replace("''", "''''", ''g''));
Cadena de MDC reemplazar referencia:
El patrón puede ser una cadena o un RegExp
Mmm, mi código de arriba no parece funcionar en IE6, por lo que será:
str.replace(/''/g, "''''")
como decían los demás, pero el uso de expresiones regulares para una operación tan simple es una exageración.
No conozco la sintaxis exacta, pero puede descubrirlo usted mismo:
str.replace(/(?!'')''(?!'')/g, "''''");
Aún no he probado esto, pero si funciona, también se ocupa de reemplazar solo las ocurrencias de una sola cita en una fila. El modificador g es necesario para reemplazar todas las incidencias.
No necesitas usar RegExp.
Versión del modelo de cuerda:
function QuoteEncoding(strvalue) {
var strquotes = /('')/g;
return "''" + strvalue.replace(strquotes, "''''") + "''";
}
Versión de patrón RegExp:
QuoteEncoding(strvalue);
Aquí tienes algunos enlaces útiles de RegExp:
Prueba esto:
str.replace("''", "''''", ''g'')
llame a este método de la siguiente manera:
str.replace(/''/g, "''''")
Prueba esto:
yourstring = yourstring.replace(/''/g, "''''")
Tenga en cuenta que si no desea utilizar RegExp (y a menudo hay buenas razones para no hacerlo), el idioma para un simple reemplazo de cadena es:
str.split("''").join("''''")
Aunque la versión RegExp suele ser ligeramente más rápida, la versión de la cadena puede ser una ganancia cuando no se sabe si puede haber caracteres especiales (como .
) En la cadena de búsqueda.
str.replace(/''/g, "''''");
Asegúrese de utilizar el indicador de coincidencia global (g) para reemplazar todas las ocurrencias en la cadena. Más información aquí .
js> s = "abc''def''xyz"
abc''def''xyz
js> s.replace(/''/g, "''''")
abc''''def''''xyz