在Acrobat X中工作并尝试使用正则表达式验证字段。我的问题是,当我在我的JavaScript代码中使用以下内容时:
var myRegExp = /dog/;
var myTextInput = event.value;
event.rc = true;
if (myTextInput != myRegExp) {
app.alert("It's a regex why do I need to input '/dog/'! and not just dog");
}
在“文本字段属性”对话框的“变量”选项卡中输入 - 它不会将其视为正则表达式。
也就是说;如果我在live pdf字段中输入'dog'(忽略引号)它会出错,但是如果我在字段中输入'/ dog /'(忽略引号)它就可以正常工作。
我的问题:为什么我的var不被识别为正则表达式。
我读过打开的'/'和关闭'/'(忽略引号)定义了一个正则表达式,但这似乎并非如此。我在这里缺少什么?
答案 0 :(得分:0)
问题似乎是你正在测试RegExp
对象和字符串之间的相等性。相反,您需要使用test
方法:
var myRegExp = /dog/;
var myTextInput = event.value;
event.rc = myRegExp.test(myTextInput);
请参阅MDN for more documentation。
以下操作不正确,将始终返回false
:
/dog/ == "dog";