Acrobat 表单字段正则表达式验证

Acrobat Form Field RegEx Validation

我的 PDF 中有一个表单域需要五个大写字母作为输入,或者根本不需要输入。其他一切都应该导致错误。我让第一部分工作了,但我在检查空白字段时犯了一些错误。这是我的 Javascript:

event.rc = true;
var myRegExp = /^[A-Z]{5}$/;
var myTextInput = event.value;
if ( !myRegExp.test(myTextInput) || myTextInput != "" )
{
    app.alert("Your order number prefix must be formatted as five characters, all caps.");
    event.rc = false;
}

将正则表达式更改为

var myRegExp = /^([A-Z]{5})?$/;

允许空字符串匹配并删除变得不相关的 || myTextInput != "" 条件。

(...)? 组是可选组,因为 ? 匹配量化子模式的 1 次或 0 次出现。