【问题标题】:How to write correct regex so JSLint will validate?如何编写正确的正则表达式以便 JSLint 进行验证?
【发布时间】:2011-03-30 08:31:58
【问题描述】:

我在替换函数中使用了一个非常简单的正则表达式,导致 JSLint.com 报告错误:

srcTemplate.replace(/{x}/g, tileX);

在互联网上快速搜索给出了很多建议,但没有一个回答我的问题:

如何增强正则表达式,以便 JSLint 进行验证并且该函数将继续工作?

【问题讨论】:

  • 那么jslint报什么错误?

标签: javascript regex jslint


【解决方案1】:

正则表达式/{x}/ 无效,因为花括号在正则表达式中具有特殊含义。一些正则表达式引擎可能仍将其视为有效的正则表达式,假设您可能指的是字面大括号而不是量词,但也许 JSLint 在这里更严格。因此,如果您打算匹配文字 {x},则需要正则表达式

/\{x\}/

为了安全起见(虽然不清楚为什么你需要一个正则表达式,因为它是一个简单的文本替换)。

通常,您使用花括号作为量词。例如x{3} 匹配xxxx{3,5} 匹配 xxxxxxxxxxxx,等等。

【讨论】:

  • 非常感谢皮茨克!我将评估您的解决方案,并尝试一个简单的替换功能,看看什么最适合我,但现在,您帮了我很多。
猜你喜欢
  • 2011-10-02
  • 2020-02-13
  • 1970-01-01
  • 2014-11-26
  • 1970-01-01
  • 2011-04-21
  • 2019-08-10
  • 1970-01-01
相关资源
最近更新 更多