簡體   English   中英

如何在JavaScript中覆蓋RegExp?

[英]How do I override RegExp in Javascript?

我正在使用一個名為MathJax的Javascript庫,該庫允許您在HTML中使用LaTex和其他數學標記語言。 我正在嘗試在Javascript中使用它,但是正則表達式正在妨礙您。 這是我的代碼:

function sendTex()
{
    var latexStuff = $("#texField").val();
    var latexString = "When $a \ne 0$, there are two solutions to \*(ax^2 + bx + c = 0\*)       and they are
    $$x = {-b \pm \qrt{b^2-4ac} \over 2a}.$$";
    $("#texVersion").append(latexString);
}

在頁面上添加新數學后,您需要告訴MathJax處理該新數學。 有關詳細信息,請參見MathJax文檔 主要思想是使用

MathJax.Hub.Queue(["Typeset",MathJax.Hub]);

當您希望MathJax在頁面上處理新數學時。 就您而言,您可以嘗試

function sendTex()
{
  var latexStuff = $("#texField").val();
  var latexString = "When $a \\ne 0$, there are two solutions to \\(ax^2 + bx + c = 0\\)" +
    " and they are $$x = {-b \\pm \\sqrt{b^2-4ac} \\over 2a}.$$";
  $("#texVersion").append(latexString);
  MathJax.Hub.Queue(["Typeset",MathJax.Hub,"texVersion"]);
}

看看是否更適合您。 請注意,您需要將反斜杠加倍,因為在JavaScript字符串中,反斜杠是特殊字符,因此要獲得文字反斜杠,您需要使用兩個反斜杠。 您還可以使用\\qrt而不是\\sqrt ,還可以使用\\*(...\\*)而不是通常的\\(...\\) (但是您可能已經配置了MathJax以使用其他定界符)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM