我目前有一个文本框,可以接受一个或多个(逗号分隔)值。
var textBox = $('#testValues').val().split(",");
我试图添加regex验证,当用户输入一个或多个值(总是必须是12个十六进制字符)并点击提交,然后regex检查并进行API调用,如果它通过了,否则会抛出一个警告消息。
我目前的做法是这样的。var regexValidation = new RegExp("^[a-zA-Z0-9]{0,12}$");
if (regexValidation.test(textBox)) { apiCall }
else { alert('Regex validation failed'); return false;}
当我只输入1个值时,它工作得很好。但是,如果我尝试输入多个带", "的值,那么它就会抛出一个警告消息。我不想在regex中添加逗号,因为这样的话,包括逗号在内的12个十六进制字符就会被占用。我应该如何处理?
谢谢您。
只需添加多个可选的值。
var regexValidation = new RegExp("^[a-zA-Z0-9]{0,12}(?:,[a-zA-Z0-9]{0,12})*$");