首页 > 解决方案 > 使用 JavaScript 检查字符串是否包含所有字母的最简单代码

问题描述

这是我找到的最简单的解决方案。如果给定字符串中是否包含所有字母,它返回true或返回。false

这是我找到的代码:

new Set("A quick brown fox jumps over the lazy dog"
  .toLowerCase()
  .replace(/[^a-z]/gi, "")
  .split("")
).size === 26

检查字符串是否包含字母表中所有字母的任何其他更简单的形式都会有所帮助。

谢谢!

标签: javascriptstringalphabet

解决方案


你不需要split

事实证明,String#split在将字符串传递给new Set. 的构造函数Set在传递一个字符串时,本质上会在创建集合之前为您将其拆分为单个字符。

例子:

new Set('A quick brown fox jumps over the lazy dog'
  .toLowerCase()
  .replace(/[^a-z]/g, '')
).size === 26

这同样有效,因为类似的东西new Set('test')变成了

Set(3) {"t", "e", "s"}

在旁注中,您可以看到我已从i正则表达式中删除了标志,正如其他答案之一所指出的那样,因为它是不必要的,因为.toLowerCase()


推荐阅读