【问题标题】:Checking if JS variable matches a regex pattern检查 JS 变量是否匹配正则表达式模式
【发布时间】:2020-03-03 08:35:55
【问题描述】:

如何在 jQuery 中检查我的变量是否与 A|0B|0C| ... Z|0 模式匹配?

模式是[one letter]|0

if (myVar.indexOf((/^[A-Z]+$/+'|0') > -1){
  // true;
}

【问题讨论】:

  • 请注意,jQuery 是一个主要用于修改 DOM 的框架。当您在这里使用正则表达式时,您只需要普通的 JS。我已经为你重新标记了这个问题。

标签: javascript regex match indexof


【解决方案1】:

鉴于该输入,您的正则表达式应如下所示:/^[A-Z]\|0$/[A-Z] 匹配第一个大写字符,然后使用 \| 转义管道,然后在输入字符串的末尾查找最终的 0。从那里您可以使用test() 检查输入是否符合该表达式。

['A|0', 'A0', 'B|0', '0|C', 'd|0'].forEach(item => {
  var result = /^[A-Z]\|0$/.test(item);
  console.log(item, result);
})

【讨论】:

    【解决方案2】:

    下面这个regex可以匹配|之后的任意整数

    ['A|0', 'A0', 'B|0', '0|C', 'd|0'].forEach(str => {   
       var result =/^[A-Za-z]\|(\d+)$/.test(str);   
       console.log(str, result); 
    })

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-16
      • 2022-01-18
      • 1970-01-01
      • 2019-04-20
      • 1970-01-01
      • 2022-11-12
      • 2015-07-06
      相关资源
      最近更新 更多