javascript - 使用 JavaScript 检查字符串是否包含所有字母的最简单代码
问题描述
这是我找到的最简单的解决方案。如果给定字符串中是否包含所有字母,它返回true
或返回。false
这是我找到的代码:
new Set("A quick brown fox jumps over the lazy dog"
.toLowerCase()
.replace(/[^a-z]/gi, "")
.split("")
).size === 26
检查字符串是否包含字母表中所有字母的任何其他更简单的形式都会有所帮助。
谢谢!
解决方案
你不需要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()
推荐阅读
- python-3.x - apsheduler 关注点分离打破了它
- go - gin-contrib/cors 返回 404
- random-forest - H2O随机森林生成的样本树中的预测值
- symfony - Symfony 4 NelmioApiDocBundle 安全标头未设置
- python - 无法将自定义模块导入测试或主服务器
- angular - Firebase-tools:尝试通过带有 Angular 应用程序的 Google Cloud Build 部署到 Firebase 时出现 404 错误
- powerbi - 从汇总数据创建计算字段
- android - 在存储库空指针异常中使用 AsyncTask 进行 Android 房间查询
- python - 如何解决此 NameError: name 'clf' is not defined?
- apache-spark - 为 emr 上的“spark-submit”作业指定标记扫描 gc