好了,我还有一个正则表达式问题要问大家。
我有一个字段有多个验证步骤。第一步是确保它不是空白,第二步是确保只输入1到3个大写字母,第三步是确保它不包含“[”(在这个场景中,左括号表示函数,我们跳过验证)。所有这些都可以工作。现在,我必须确保输入的值只是有效的Excel列引用。有效的Excel列可以是字母A - XFD。
我目前使用的是:
if (checkValue !==""){ //check for not blank
if ((checkValue.match(/^[A-Z]{1,3}$/) === null) && (functionCheck === false) && (validateColumnRange(rangeFrom))) { //check for only 1 - 3 alpha chars & run function check (function looks for "["), and run function check to validate column range
//do A - XFD validation here
}
}
任何进一步的方向将非常感谢,因为我已经通过regex图茨几个小时了,现在我迷路了。
我曾经在过去的一个类似的问题上得到过帮助,我可怜的尝试模仿当时提供的功能如下:
function validateColumnRange(valueRange) {
if (typeof valueRange !== "string" || !valueRange.length)
return false;
var startIndex = valueRange.search(/[\d+]/);
var column = valueRange.substring(0, startIndex).toUpperCase();
return (column >= "A" && column <= "XFD");
}
不管用了...请帮帮忙
2条答案
按热度按时间kqlmhetl1#
既然您已经确定该值为1-3个字母字符,那么下面的代码如何:
任何2个或更少字母的值都是可以接受的,对于3个字母的情况,字母比较是足够的。
yi0zb3m42#
使用此正则表达式: