我需要验证范围R1:C1-R2:C2范围
我试过了,
function isValid(rc) {
if (rc)
if (rc.trim() === "") return false;
var isPattern = /^[0-9]+:[0-9]+-[0-9]+:[0-9]+$/.test(rc);
if (!isPattern) return false;
return ((rc));
}
但上面的代码也需要9:9-0:0或0:0-0:0
更新:
如何在服务器端检查客户端数字验证后的给定范围是否正确。因为,在服务器端范围可能无效。
答案 0 :(得分:0)
您需要检查是否有一些字母字符,然后是数字字符 - 这是匹配字段的方式:[a-z]+\d+
。它会匹配一些字符,然后是一些数字。例如。 a1
,ASD34
。它不会与12
或sab
匹配。
如果你把所有这些放在一起,你会得到这个正则表达式:
/^[a-z]+\d+:[a-z]+\d+\s*-\s*[a-z]+\d+:[a-z]+[0-9]+$/i
说明:
/../i
不区分大小写,因此足以指定[a-z]
,无需键入[a-zA-Z]
[a-z]+\d+
,如R1
或B12
。它不匹配12
或AB
\s*-\s*
容忍短划线周围的空格field:field-field:field
,这就是你想要的。您可以使用this正则表达式演示。
检查值是否实际正常,它需要的不仅仅是正则表达式。您必须按破折号和冒号分割代码并比较值。