我正在使用.test()方法检查文本框中的输入值是否与我的反应应用中的正则表达式匹配,下面是我的代码
if(!((data.regex_tx).test(value))){
message = <p style={{color:'red',marginTop:-15}}>{data.vld_msg}</p>
}
其中data.regex =来自json的regex,value =来自textbox的输入值,data.vld_msg =来自json的验证消息将被显示。获取控制台错误“Uncaught TypeError:data.regex_tx.test不是函数(...)”。语法有什么不对。请帮助
答案 0 :(得分:1)
我认为data.regex_tx
只是string
,因为它是JSON。您必须将string
转换为RegExp
,然后调用test
函数。做类似下面的事情
var expr = new RegExp(data.regex_tx);
if(expr.test(value)) {
// other code
}