2009-01-02 17 views
58

estoy usando una expresión regular sencilla para sustituir las etiquetas de saltos con saltos de línea:JavaScript equivalente de preg_replace PHP

br_regex = /<br>/; 
input_content = input_content.replace(br_regex, "\n"); 

Esto sólo sustituye a la primera instancia de una etiqueta de salto, pero tengo que reemplazar todo. preg_match_all() haría el truco en PHP, pero me gustaría saber el equivalente de JavaScript.

+3

Como no es necesario para que coincida con el patrón de expresión, usted debe utilizar str_replace() en PHP en lugar de preg_match_all() para su ejemplo: $ str = str_replace ('
', "\ n", $ str); – scronide

+0

Realmente debería cambiar el título diciendo preg_replace y no preg_match_all, esto es confuso y no ayuda al buscar – iBobo

Respuesta

105

Uso del indicador global, g:

foo.replace(/<br>/g,"\n") 
17

idioma JS para no Regexp mundial reemplazar:

input_content.split('<br>').join('\n') 
+0

Me siento sucio al usar esto pero funciona y es la única manera si la expresión de expresiones regulares está decodificada en base 64. TY :) – JRsz

+0

Hola @bobince, Asker quería una solución basada en RegEx, ¿por qué respondes esto? – Tamim

+0

@Tamim La solución de expresiones regulares ya se había proporcionado; esta es una alternativa en cuanto a la regex simple de reemplazo de cadena no es necesaria. – bobince

Cuestiones relacionadas