Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

113
Visualizações
¿Por qué necesito reemplazar \n con \n?

Tengo una línea de datos como esta:

1•#00DDDD•deeppink•1•100•true•25•100•Random\nTopics•1,2,3,0•false en un archivo de texto.

Específicamente, para mi "problema", estoy usando Random\nTopics como un dato de texto, y luego busco '\n' y divido el mensaje en dos líneas según la ubicación de '\n'.

Está almacenado en blockObj.msg, y lo busco usando blockObj.msg.split('\n') , pero seguí obteniendo una matriz de 1 (sin divisiones). Pensé que estaba haciendo algo fundamentalmente incorrecto y pasé más de una hora resolviendo problemas, hasta que, por capricho, intenté

blockObj.msg = blockObj.msg.replace(/\\n/g, "\n")

y eso pareció resolver el problema. ¿Alguna idea de por qué es necesario esto? Mi solución funciona, pero no tengo idea de por qué, y me gustaría entender mejor para no tener que pasar tanto tiempo buscando una respuesta tan extraña como esta.

Tengo un error similar al leer "texto" de un campo de texto de entrada. Si escribo un '\n' en el cuadro, la división no lo encontrará, pero usar un reemplazo funciona (el reemplazo parece inútil, pero aparentemente no lo es...)

obj.msg = document.getElementById('textTextField').value.replace(/\\n/g, "\n")

Lo siento si esto es confuso, usuario desde hace mucho tiempo de la lectura de soluciones, es la primera vez que publica una pregunta. ¡Gracias por tu tiempo y paciencia!

PD Si es posible... ¿hay alguna manera de hacer lo contrario? ¿Reemplazar un "\n" real con un "\n" falso? (Me gustaría tener mi archivo de datos generado dinámicamente para tener un "\n" en lugar de una nueva línea)

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Está almacenado en blockObj.msg, y lo busco usando blockObj.msg.split('\n') ,

En un literal de cadena de JavaScript, \n es una secuencia de escape que representa una nueva línea, por lo que está dividiendo los datos en nuevas líneas.

Sin embargo, los datos que tiene no tienen nuevas líneas. Tiene caracteres de barra seguidos de n caracteres. Son datos, no secuencias de escape.

Su llamada a replace ( blockObj.msg = blockObj.msg.replace(/\\n/g, "\n") ) soluciona esto al reemplazar las barras inclinadas y ns con nuevas líneas.

Sin embargo, ese es un enfoque demasiado complicado. Puedes unir los personajes que tienes directamente. blockObj.msg.split('\\n')

about 4 years ago · Juan Pablo Isaza Relatório

0

en tu archivo de texto

1•#00DDDD•deeppink•1•100•true•25•100•Random\nTopics•1,2,3,0•false

significa que hay caracteres que son \ y n , así es como se almacenan, pero para insertar un new line character por reemplazo, entonces está buscando el par de caracteres \ y n .

 obj.msg = document.getElementById('textTextField').value.replace(/\\n/g, "\n")

cuando haces el replace(/\\n/g, "\n")

está buscando \\n , esta es la versión escapada de la cadena, lo que significa que el reemplazo debe encontrar todas las cadenas que son \n , pero para buscar eso, primero debe escapar a \\n

EDITAR

/\\n/g es la cadena de expresiones regulares... \n es el valor... entonces /\REGEXSTUFFHERE/g el último / es seguido por banderas de expresiones regulares, por lo que g en /g sería una búsqueda global

recursos de expresiones regulares

prueba de expresiones regulares en línea

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda