Javascript 使用模式测试功能匹配 F1-F12 功能键的正则表达式模式

Javascript regex pattern to match for Function keys from F1-F12 using pattern test function

Javascript 使用模式测试函数匹配 F1-F12 功能键的正则表达式模式

我在下面尝试过,但给出的输出是 false,例外是 true

let text = "F11";
let pattern = /^[F][1-12]$/;
let result = pattern.test(text); console.log(result);

此正则表达式匹配 F1-F12:/^F[1-9](?:(?<=1)(?:0|1|2))?$/:

let re = /^F[1-9](?:(?<=1)(?:0|1|2))?$/;

for (var i = 0; i < 16; i++){
  let text = `F${i}`;
  console.log(`${text}: ${re.test(text)}`);
}

分解:

  • ^ 匹配输入的开始;只有在开头才会匹配
  • F 匹配文字 'F'
  • [1-9]匹配1到9之间的一个字符
  • (?:(?<=1)(?:0|1|2)) 是匹配 11 和 12 的地方
    • (?<=1)(?:0|1|2)) 是一个回顾断言:如果第一部分为真,它只会匹配第二部分
      • (?:0|1|2) 匹配 10-12
      • 的 0、1 或 2