Salve a tutti.
Ho un problema di integrazione del codice Latex con una funzione Javascript. Per chi nn lo sapesse il linguaggio Latex è un linguaggio per la scrittura di formule matematiche. Una formula di questo tipo:
\sum_{1}^{5}(\int_{3}^{2}\frac{\partial^2 2}{\partial x^2})
da come risultato:
![]()
Ora il mio problema è che memorizzando la formula in modo testuale, e poi riprendendola dal DB, devo x forza raddoppiare i '\\', poichè la formula per la visualizzazzione passa per un DOM, e quindi attraverso il javascript che interpreta il '\\' x i caratteri speciali.
l'unico modo di aumentare i \ è attraverso una semplice espressione regolare:
dove @ è il carattere di controllo che uso x individuare la formula, e codificarla attraverso la libreria MathJax (serve a fare il render immediato delle formule Latex, senza avere la necessità di usare le immagini).codice:var txt="@"; var latex = txt+document.getElementById("latex_formula").value+txt; latex.replace(/\\/g,"\\\\");
La mia formula memorizzata nel DB quindi dovrebbe essere del tipo:
@\\sum_{1}^{5}(\\int_{3}^{2}\\frac{\\partial^2 2}{\\partial x^2})
Ma la funzione di prima proprio nn ne vuole sapere di sostituire i '\\' con '\\\'.
Se metto replace(/\\\\/g,"\\\\\\\\") per cercare '\\\' ed avere '\\\\\' non ho nessun problema.
Qlk mi sa spiegare il perchè? Come posso fare?
Ho trovato questo tool online per la verifica delle RegExp, e qui funziona alla perfezzione, o almeno mi sembra che funzioni.
Grazie a tutti.

Rispondi quotando