Necesito convertir la sintaxis personalizada en un <span> con un atributo de color .
Ejemplo de entrada:
First {text with link}{https://www.stackoverflow.com/}. Followed by {colored text}{#85144B}.Por ahora usé en Javascript:
line = line.replace(/\{(.*?)\}\{(#[0-9,AF,af]{3}|#[0-9,AF,af]{6})\}/g, '<span style="color:$2">$1</span>'); que coincide/reemplaza si solo hay una aparición de esos corchetes {} .
Sin embargo, con el ejemplo anterior, también coincide con todos los demás corchetes (¿codicioso?):
Siendo todavía un novato de Regex, no puedo entender cómo SOLO hacer coincidir el primer grupo (entre paréntesis) antes del bloque hexcolor.
Intenté la aserción anticipada y la aserción anticipada negativa, pero fallé.