Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

125
Views
eliminar atributos html de un valor de cadena html usando expresiones regulares

Necesito eliminar los atributos html de una cadena html. Tengo algunos campos de entrada de texto formateados que permiten a los usuarios copiar y pegar texto manteniendo el html básico. El problema es que parte del texto copiado de un documento de Word viene con atributos que deben eliminarse. Actualmente, la expresión regular que estoy usando funciona en un probador de expresiones regulares, pero ninguno de los atributos se elimina.

Código para eliminar atributos:

 var stringhtml = '<div class="Paragraph BCX0 SCXW244271589" paraid="1364880375" paraeid="{8e523337-60c9-4b0d-8c73-fb1a70a2ba58}{165}" style="margin-bottom: 0px;margin-left:96px;padding:0px;user-select:text;-webkit-user-drag:none;-webkit-tap-highlight-color:transparent; overflow-wrap: break-word;">some text</div>' var regex = /[a-zA-Z]*=".*?"/; var replacedstring = stringhtml.replace(regex, ''); document.write(replacedstring);

¡Cualquier ayuda es apreciada!

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Existe bastante literatura sobre por qué analizar HTML con expresiones regulares puede ser bastante arriesgado: esta famosa pregunta de StackOverflow es un buen ejemplo.

Como @Polymer ha señalado, su expresión regular actual perderá atributos con comillas simples, pero también hay otras posibilidades: atributos data , por ejemplo, data-id="233" se perderán, y también atributos sin comillas, como disabled . ¡Podría haber más!

Puede terminar siempre poniéndose al día con este enfoque, siempre teniendo que cambiar su expresión regular a medida que encuentre nuevas combinaciones en su HTML.

Un enfoque más seguro podría ser usar el método DOMParser para analizar su cadena como HTML y extraer el contenido de esa manera:

 let stringhtml = '<div class="Paragraph BCX0 SCXW244271589" paraid="1364880375" paraeid="{8e523337-60c9-4b0d-8c73-fb1a70a2ba58}{165}" style="margin-bottom: 0px;margin-left:96px;padding:0px;user-select:text;-webkit-user-drag:none;-webkit-tap-highlight-color:transparent; overflow-wrap: break-word;">some text</div>' let parser = new DOMParser(); let parsedResult = parser.parseFromString(stringhtml, 'text/html'); let element = document.createElement(parsedResult.body.firstChild.tagName); element.innerText = parsedResult.documentElement.textContent; console.log(element);

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!