Javascript Regex exec很奇怪

时间:2018-02-27 14:22:36

标签: javascript regex

我不了解Javascript Regex的行为

我使用以下代码验证文本:

let validLine = /^-*[\w\s]+:(concept|term):-?(0[.]?\d*|1)$/g
let isValid = newText
  .split('\n')
  .reduce((valid, line) => {
    line = line.trim()
    if (line === '') return valid
    return valid && !!validLine.exec(line)
}, true)

但是这段代码没有按预期运行。以下是每次初始化正则表达式的地方

let isValid = newText
.split('\n')
.reduce((valid, line) => {
  let validLine = /^-*[\w\s]+:(concept|term):-?(0[.]?\d*|1)$/g
  line = line.trim()
  if (line === '') return valid
  return valid && !!validLine.exec(line)
}, true)

为什么?

0 个答案:

没有答案