El subprograma WeChat procesa texto enriquecido

Procesamiento de la adaptación del ancho de la imagen en texto enriquecido

  1. Eliminar imglos atributos de estilo, ancho y alto en la etiqueta.
  2. imgAgregue atributos de estilo a la etiqueta: ancho máximo: 100%; alto: automático
  3. Modifique el atributo de ancho en todos los estilos a ancho máximo: 100%
  4. quitar <br/>etiqueta
formatRichTextImg = (html) => {
    
    
	let newContent= html.replace(/<img[^>]*>/gi,function(match,capture){
    
    
		match = match.replace(/style="[^"]+"/gi, '').replace(/style\s*?=\s*?([‘"])[\s\S]*?\1/ig, '');
		match = match.replace(/width="[^"]+"/gi, '').replace(/width='[^']+'/gi, '');
		match = match.replace(/height="[^"]+"/gi, '').replace(/height='[^']+'/gi, '');
		return match;
	});
	newContent = newContent.replace(/style="[^"]+"/gi,function(match,capture){
    
    
		match = match.replace(/width:[^;]+;/gi, 'max-width:100%;').replace(/width:[^;]+;/gi, 'max-width:100%;');
		return match;
	});
	newContent = newContent.replace(/<br[^>]*\/>/gi, '');
	newContent = newContent.replace(/\<img/gi, '<img style="max-width:100%;height:auto;display:block;"');
	return newContent;
},

Obtenga el contenido real en texto enriquecido(Excluyendo etiquetas, imágenes, espacios, saltos de línea y luego volviendo a convertir los símbolos especiales escapados)

  1. Eliminar etiquetas e imágenes
  2. Quitar espacios
  3. Volver a convertir símbolos especiales escapados
formatRichText = (rich) => {
    
    
	// 对应替换的的内容
	const rep = {
    
    
		"&lsquo;": "‘",
		"&rsquo;": "’",
		"&ldquo;": "“",
		"&rdquo;": "”",
		"&hellip;": "…",
		"&middot;": "·",
		"&amp;": "&",
		"&lt;": "<",
		"&gt;": ">",
	}
	return 
		rich.replace(/<[^>]+>/g, "")
			.replaceAll(/\r|\n|\\s|&nbsp;|&ensp;|&emsp;/ig, "")
			.replaceAll(new RegExp(Object.keys(rep).join('|'),'ig'), function ($0) {
    
    
				return rep[$0];
			})
}

Mostrar texto enriquecido

Etiqueta de texto enriquecido

<rich-text nodes="{
     
     {richText}}"></rich-text>

Supongo que te gusta

Origin blog.csdn.net/weixin_55556204/article/details/124488693
Recomendado
Clasificación