regex - 使用正则表达式进行输入验证是一个好习惯吗?

标签 regex language-agnostic

目前我在正则表达式方面有一些理论背景,但我几乎从未使用过它们。

我正在尝试开发一些用于一般输入验证的类,并且我一直在编写不使用任何正则表达式的方法。我最近阅读 this Jeff 的文章,现在我想知道是否应该重构一些方法以在其中包含 regexp。

我认为正则表达式用于为解析器和其他任何应用程序构建前端,但显然它们的用途远不止于此。

我意识到并非所有验证都可以或应该使用正则表达式完成,但它们是验证输入的好习惯吗?

最佳答案

正则表达式只是将文本与模式匹配的一种方式。还有其他方法可以在不使用正则表达式的情况下做同样的事情。您不应将正则表达式视为必须包含在代码中的流行语。使用任何最有效的工具。

对于输入验证,请确保您使用的任何工具都可以让您准确指定要接受的文本类型和 拒绝其他一切 默认情况下。正则表达式让您可以轻松、简洁地为某些类型的输入执行此操作,这就是许多人使用它们的原因。

关于regex - 使用正则表达式进行输入验证是一个好习惯吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/764376/

相关文章:

regex - Emacs 查询替换正则表达式多行

Java正则表达式将字符串拆分为数字数组

architecture - "OAuth Provider"究竟是什么?

language-agnostic - 自旋锁是如何在底层实现的?

regex - 如何使用 regexp-me 库?

regex - 为什么 sed 不像 awk 那样追加换行符?

language-agnostic - 为了理解不同的方法和概念,需要学习哪些重要的语言?

database - 您是否创建类来处理数据驱动应用程序的 "entities"?

math - 为什么浮点运算在添加小数时不能给出准确的结果?

javascript - 在需要搜索和替换的代码中转义括号(Sublime Text2)