好的,我還有一個REGEX問題給大家。REGEX只匹配有效EXCEL COLUMNS(A-XFD)
我有一個有多個驗證步驟的字段。第一步是確保它不是空白的,第二步是確保只輸入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
}
}
任何進一步的方向將非常感激,因爲我已經通過正則表達式TUTS數小時現在很失落。
我已獲得在過去類似的問題,我可憐的企圖仿效這是隨後提供的功能是幫助如下:
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");
}
它不工作...請幫助
如果你檢查輸入只有3個字母,爲什麼還檢查沒有任何'['? – Robin
A - XFD有效,但方括號中包含的功能也是有效的,所以 [startColumn]也是有效的條目。 –
這裏是驗證規則的完整列表: 校驗值必須: 不能爲空, 可以包含在[]功能, 如果沒有一個功能:只能包含大寫ALPHA和 必須是有效的Excel列REFERENCE(字母A-XFD) –