如何将反斜杠附加到 JavaScript variabl

how to append backslash to javascript variabl

本文关键字:JavaScript variabl      更新时间:2023-09-26

我有一个控件,它有以下内容。

"time1":{    
       "regex": ^([0-9]|0[0-9]|1[0-3]|2[0-3]):[0-5][0-9]$,
       "alertText": "* Invalid Time"
    }

我有一个方法,它将接受以下输入:

//for regex validation
    function inputFilter(inputbox, regex) {
        var regExStart = "/''";
        var regExEnd = "/''";
        consol.log("Reg Ex Validation : "+regExStart + regex + regExEnd);
        txb.value = inputbox.value.replace( regex, "");
    }

当我调用上述方法时,我得到以下内容: Uncaught SyntaxError: Unexpected token ILLEGAL

我不确定我在构建regex时是否犯了错误。 我认为它应该是这样的:

 /^([0-9]|0[0-9]|1[0-3]|2[0-3]):[0-5][0-9]$/ and i have to append `//` with my `regex`.

请帮我做到这一点。

您可以从字符串编译正则表达式,如下所示:

var regexCompiled = new RegExp(regex);
txb.value = inputbox.value.replace(regexCompiled, "");

此外,您的模式周围可能缺少引号:

"regex": "^([0-9]|0[0-9]|1[0-3]|2[0-3]):[0-5][0-9]$",

当然,你可以在那里使用正则表达式,如下所示:

"regex": /^([0-9]|0[0-9]|1[0-3]|2[0-3]):[0-5][0-9]$/,

那么你甚至不必编译它。

你可以在javascript中创建一个常规的表达式,如下所示

var re = /^[a-z]$/g;

var re = new RegExp("^[a-z]$", "g");

请参阅正则表达式